新版汇编语言程序设计习题答案(钱晓捷主编)(4)
时间:2025-04-23
时间:2025-04-23
计算机科学与技术,汇编语言程序设计,新版,答案,钱晓捷
imul Y ;dx,ax = A*B (将操作数看作符号数,以下同)
mov cx,ax
mov bx,dx ;bx,ax <-- dx,ax =A*B
mov ax,Z ;ax = C
cwd ;dx,ax =C (扩展符号后为双字)
add cx,ax
adc bx,dx ;bx,cx <-- bx,cx+dx,ax=A*B+C
sub cx,540
sbb bx,0 ;bx,cx<-- A*B+C-540
mov ax, V ;ax= D
cwd ;dx,ax= D (扩展符号后为双字)
sub ax, cx
sbb dx, bx ;dx,ax = dx,ax - bx,cx = D-(A*B+C-540)
idiv X ;运算结果:[D-(A*B+C-540h)]/A ;ax存商,dx存余数
2.10;
(1) xchg [si],30h xchg的操作数不能是立即数
(2 ) pop cs 不能对CS直接赋值
(3) sub [si],[di] 两个操作数不能都是存储单元
(4)push ah 堆栈的操作数不能是字节量
(5) adc ax,ds adc的操作数不能是段寄存器
(6) add [si],80h 没有确定是字节还是字操作
(7) in al,3fch in不支持超过FFH的直接寻址
(8) out dx,ah out只能以AL/AX为源操作数
2.11; 给出下列各条指令执行后的结果,以及状态标志CF、OF、SF、ZF、PF的状态。 指令 AX的值 CF OF SF ZF PF
Mov ax,1407h 1470h - - - - -
And ax,ax 1470h 0 0 0 0 0
Or ax,ax 1470h 0 0 0 0 0
Xor ax,ax 0 0 0 0 1 1
Not ax 0ffffh - - - - -
Test ax,0f0f0h 0ffffh 0 0 1 0 1
注意: 1. mov, not指令不影响标志位
2. 其他逻辑指令使CF=OF=0, 根据结果影响其他标志位。
2.12; 假设例题2.32的程序段中,AX = 08H,BX = 10H,请说明每条指令执行后的结果和各个标志位的状态。
下一篇:二年级音乐第三课、第四课