早教吧作业答案频道 -->其他-->
1.假设寄存器AX=1234H,DX=0A000HMOVBX,0MOVCX,BXSUBCX,AXSBBBX,DXMOVAX,CXMOVDX,BX上述程序段执行后AX=0EDCCH,DX=5FFFH2.MOVAX,234HMOVCL,3ROLAX,CLDECAXMOVCX,4MULCX此段程序执行完后,(AX)=467CH,(CX)=
题目详情
1.假设寄存器AX=1234H,DX=0A000H
MOV BX,0
MOV CX,BX
SUB CX,AX
SBB BX,DX
MOV AX,CX
MOV DX,BX
上述程序段执行后AX=___0EDCCH____ ,DX=__5FFFH_____
2.MOV AX,234H
MOV CL,3
ROL AX,CL
DEC AX MOV CX,4
MUL CX
此段程序执行完后,(AX)= ___467CH____ ,(CX)= _____4__
3.DA1 DB 83H,72H,61H,94H,5AH
┇
MOV CX,WORD PTR [DA1]
AND CX,0FH
MOV AL,[DA1+3]
SHL AL,CL
上述指令序列执行后,AL=___0A0H____,CL=___03H____.
MOV BX,0
MOV CX,BX
SUB CX,AX
SBB BX,DX
MOV AX,CX
MOV DX,BX
上述程序段执行后AX=___0EDCCH____ ,DX=__5FFFH_____
2.MOV AX,234H
MOV CL,3
ROL AX,CL
DEC AX MOV CX,4
MUL CX
此段程序执行完后,(AX)= ___467CH____ ,(CX)= _____4__
3.DA1 DB 83H,72H,61H,94H,5AH
┇
MOV CX,WORD PTR [DA1]
AND CX,0FH
MOV AL,[DA1+3]
SHL AL,CL
上述指令序列执行后,AL=___0A0H____,CL=___03H____.
▼优质解答
答案和解析
像83H、0A0H这些数,都是表示的是16进制数.
1、
MOV BX,0-------BX=0
MOV CX,BX--------CX=BX=0
SUB CX,AX--------CX-AX=0EDCCH (你可以用电脑的计算器选到程序员情况下来算一下)
-------------(SUB是不带结尾的减法指令,这里的执行操作:CX-AX,结果放在CX里面)
SBB BX,DX-------BX-DX=5FFFH
-------------(SBB是带借位减法,这里的执行操作:BX-DX-CF,其中,CF是借位,最后结果放在BX里,BX-CF=6000H,再减去CF=1,就是5FFFH了.)
MOV AX,CX---------把CX 里的数放到AX,AX=0EDCCH
MOV DX,BX---------把BX里的数放到DX
2、
ROL是循环左移指令,表示将操作数左移,由CL指定移位位数,最高位一方面进入标志位CF,一方面移入最低位形成环路.
这里先说一下~AX组成是高位AH和低位AL,AH和AL都各有8位.所以这里你看到的ROL和SHL的结果一样,因为他们都没有移出去的.
MOV AX,234H-------AX=234H,用二进制表示就是1000110100
MOV CL,3-----------CL指定左移位数,左移3位
ROL AX,CL-----------左移3位,就是1000110100000,也就是AX=11A0H,
DEC AX---------------AX自减一,AX=119FH
MOV CX,4-----------CX=4
MUL CX--------------AX*CX,结果的低位字(16位)放在AX中,高位字(16位)放在DX中,这里不需要高位,AX=467CH.
3、
DA1 DB 83H,72H,61H,94H,5AH ---定义的数据段,DB表示是字节型的
┇
MOV CX,WORD PTR [DA1]---------CX指向前面定义的数据段DA1,WORD PTR [DA1]表示是取字型的,就是说两个字节,这里取的是83H,72H,但是因为存放的缘故,低位在前,高位在后,所以83H是低位
AND CX,0FH ---------AND表示是‘与’操作,即两个操作数对应位都为1时才为1.0FH换为二进制为00001111,和刚刚取的83H相与,83H二进制为10000011,相与后,为00000011,
所以CX=3H(CL=3H).
MOV AL,[DA1+3]--------去数据段中DA1+3这个数 94H放在AL中,AL=10010100
SHL AL,CL --------------SHL,逻辑左移指令,左移后,低位补0,和ROL不同的是,不形成环路.这里逻辑左移CL位,即移动3位,为10100000,即AL=0A0H.
做了很久了,希望帮得到你~
^-^
1、
MOV BX,0-------BX=0
MOV CX,BX--------CX=BX=0
SUB CX,AX--------CX-AX=0EDCCH (你可以用电脑的计算器选到程序员情况下来算一下)
-------------(SUB是不带结尾的减法指令,这里的执行操作:CX-AX,结果放在CX里面)
SBB BX,DX-------BX-DX=5FFFH
-------------(SBB是带借位减法,这里的执行操作:BX-DX-CF,其中,CF是借位,最后结果放在BX里,BX-CF=6000H,再减去CF=1,就是5FFFH了.)
MOV AX,CX---------把CX 里的数放到AX,AX=0EDCCH
MOV DX,BX---------把BX里的数放到DX
2、
ROL是循环左移指令,表示将操作数左移,由CL指定移位位数,最高位一方面进入标志位CF,一方面移入最低位形成环路.
这里先说一下~AX组成是高位AH和低位AL,AH和AL都各有8位.所以这里你看到的ROL和SHL的结果一样,因为他们都没有移出去的.
MOV AX,234H-------AX=234H,用二进制表示就是1000110100
MOV CL,3-----------CL指定左移位数,左移3位
ROL AX,CL-----------左移3位,就是1000110100000,也就是AX=11A0H,
DEC AX---------------AX自减一,AX=119FH
MOV CX,4-----------CX=4
MUL CX--------------AX*CX,结果的低位字(16位)放在AX中,高位字(16位)放在DX中,这里不需要高位,AX=467CH.
3、
DA1 DB 83H,72H,61H,94H,5AH ---定义的数据段,DB表示是字节型的
┇
MOV CX,WORD PTR [DA1]---------CX指向前面定义的数据段DA1,WORD PTR [DA1]表示是取字型的,就是说两个字节,这里取的是83H,72H,但是因为存放的缘故,低位在前,高位在后,所以83H是低位
AND CX,0FH ---------AND表示是‘与’操作,即两个操作数对应位都为1时才为1.0FH换为二进制为00001111,和刚刚取的83H相与,83H二进制为10000011,相与后,为00000011,
所以CX=3H(CL=3H).
MOV AL,[DA1+3]--------去数据段中DA1+3这个数 94H放在AL中,AL=10010100
SHL AL,CL --------------SHL,逻辑左移指令,左移后,低位补0,和ROL不同的是,不形成环路.这里逻辑左移CL位,即移动3位,为10100000,即AL=0A0H.
做了很久了,希望帮得到你~
^-^
看了1.假设寄存器AX=1234H...的网友还看了以下:
一道VF题假设新建一个程序文件MYPRCO.PRG(不存在同名的.exe,.app和.fxp文件) 2020-05-13 …
在Windows中的“任务栏”上显示的是。(A)、系统后台运行的程序(B)、系统禁止运行的程序(C 2020-06-18 …
下列VB程序的功能是:程序运行时,单击命令按钮Commandl后,产生10个[1,999]范围内互 2020-06-29 …
下面的程序是求如下表达式的值。S=sqrt(ln(1)+ln(2)+ln(3)+......+ln 2020-07-23 …
1.假设寄存器AX=1234H,DX=0A000HMOVBX,0MOVCX,BXSUBCX,AXSB 2020-11-16 …
求信息作业答案。1.一般地,程序编写完成以后,首先要试运行,以便发现错误和修改错误,这种边运行边修改 2020-11-23 …
计算机编程人员在编写好程序以后需要对程序进行测试.程序员需要知道到底有多少条执行路径(即程序从开始到 2020-11-26 …
当一个应用程序被最小化后,该应用程序将()。A.被转入后台执行B.继续执行C.被终止执行D.被暂停执 2020-12-15 …
计算机编程人员在编写好程序以后需要对程序进行测试.程序员需要知道到底有多少条执行路径(即程序从开始到 2020-12-18 …
在计算机科学中常用框图表示程序运行的顺序,称程序流程图.(如图所示,箭头表示执行的顺序或数据的流向, 2021-01-15 …