资源描述:
《算术运算指令练习题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、算术运算指令练习题一、读程序,指出结果1、MOVAL,0F8HADDAL,39H上述指令段运行后,AL的值是().CF=(),OF=(),AF=(),PF=(),SF=(),ZF=()31H1010002、下面程序段执行后,AL=(),标志位CF=(),OF=(),MOVAL,64MOVBL,-70SUBAL,BL86H11-70→8位二进制补码?方法:+70=46H,00H-46H=BAHBAH即为-70的8位二进制补码。64=40H减法:AL-BL=40H-BAH=86H3、设DS=1000H,BX=0300H,SI=0002H,DX=0100H,自1000H:0300H单元开始存有以
2、下数据(用十六进制形式表示):1234567890ABCDEF,试说明下列各条指令执行后目的操作数的内容。⑴ADDBX,12⑵MOVDX,[0300H]⑶SUBBYTEPTR[BX],8⑷MOVAX,[BX][SI]⑸MOVCX,5[BX]⑹MOVDX,4[BX][SI]编程时,数据可以用十进制,二进制,或十六进制表示。但在分析解答问题时,通常需转成十六进制或二进制。(1)BX=030CHH(2)DX=3512H(3)1000H:0300H单元的数据变为0AH.(4)AX=7856H(5)CX=CDABH(6)DX=EFCDH4.设AX=C5FFH,BX=9E00H,试实现以下要求:⑴AD
3、DAX,BX指令执行后,AX=,ZF=,SF=,CF=,OF=,AF=,PF=,63FFH0011015、写出执行以下二进制运算的指令序列,其中X、Y、Z、W、R均为存放16位带符号数内存单元的地址。⑴Z=(Z-X)+W⑵Z=W-(X+10)-(R+8)⑶Z=(W*X)/(Y+4),余数送R。(1)MOVAX,Z;取Z中的数据MOVBX,X;取X中的数据SUBAX,BX;Z-XADDAX,W;Z-X+WMOVZ,AX;存结果到Z⑵Z=W-(X+10)-(R+8)(2)MOVAX,W;取W中的数据MOVBX,X;取X中的数据ADDBX,10;X+10SUBAX,BX;W-(X+10)MOV
4、CX,R;取R中的数据ADDCX,8;R+8SUBAX,CX;W-(X+10)-(R+8)MOVZ,AX;存结果到Z⑶Z=(W*X)/(Y+4),余数送R。(3)MOVAX,W;取W中的数据到AX中MOVBX,X;取X中的数据到BX中MULBX;W*X,结果在DX_AX中MOVCX,Y;取Y中的数据到CX中ADDCX,4;Y+4IDIVCX;(W*X)/(Y+4),商在AX中,余数在DX中MOVZ,AX;存商到Z中MOVR,DX;存余数到R中6、AL=FBH,BL=12H,则,指令MULBL执行后,AX=H;指令IMULBL执行后,AX=H11A6FFA6思路:MULBL为无符号数乘法指令
5、,将AL和BL直接相乘(十六进制)即可。IMULBL为有符号数乘法指令,计算机做有符号数相乘的步骤如下:(1)计算两个相乘的数的绝对值。若为负数,其绝对值的计算为用0减该数,即得负数的绝对值;若为正数,其绝对值就为该数。(2)绝对值相乘。相乘时不考虑符号,只考虑两数的绝对值相乘,得到两个数的绝对值相乘结果。(3)结果。结果的符号位为相乘的两个数的符号位的异或,即两数符号相同,结果符号就为0,不同就为1.若结果的符号位为0,说明是正数,两数绝对值相乘的结果即为最终结果。若结果符号位为1,说明是负数,就要用0减去上一步中绝对值相乘结果,得到的数即为最终结果。若AL=FBH,BL=12H,IMU
6、LBL后,结果为?步骤:(1)计算绝对值:0-FB=05H,12H(2)绝对值相乘:05H*12H=005AH(3)结果符号位为1,因为两数符号不同,异或即为1.0000H-005AH=FFA6HAX=FFA6H7、若AL=96H,BL=05H,则执行IMULBL指令后,结果AX=()(1)计算绝对值:0-96H=6AH,05H(2)绝对值相乘:6AH*05H=0212H(3)结果符号位为1,因为两数符号不同,异或即为10000H-0212H=FDEEHFDEEH8、若AL=FFH,BL=FFH,则执行IMULBL指令后,结果AX=()(1)计算绝对值:0-FFH=01H,0-FFH=01
7、H(2)绝对值相乘:01H*01H=0001H(3)结果符号位为0(两数符号相同,结果符号为0)结果即为绝对值相乘结果。0001H9、下面程序段执行后,AX=(),BX=()。MOVAX,92HMOVBX,10HADDBX,70HADCAX,BXPUSHAXMOVAX,20HPOPBXADDAX,BX;AX=0092H;BX=0010H;BX=0080H,CF=0;AX=0112H;(SP+1)_(SP)=0112H;A