MOV CX,00ABH OR CX,0FF00H SUB AX,CX 已知:AX=OFFAAH,CF=1 执行程序后
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/06 07:58:22
MOV CX,00ABH OR CX,0FF00H SUB AX,CX 已知:AX=OFFAAH,CF=1 执行程序后 AX CX SF CF 等于多少
MOV CX,00ABH ; (CX)=00ABH
OR CX,0FF00H ; (CX)=0FFABH
SUB AX,CX ; (AX)=0FFAAH - 0FFABH =0FFFFH
(AX)=0FFFFH
(CX)=0FFABH
结果AX的最高位为1 所以SF =1
FFAA-FFAB不够减的,所以有了借位 ,则CF=1
再问: 谢谢,大侠还可帮我看下这个吗? 将一个无符号数乘以10。该数存在地址为FACTOR的内存单元中 LEA BX,FACTOR MOV AX,[BX] ( 1 ) SHL BX,1 ( 2 ) SHL AX,CL ADD AX,BX 程序中(1)(2)该怎么填,如果(FACTOR)=0CH,运行程序后,AX,BX,的值,及FLAGS中,CF,SF,PF,ZF的数值
再答: LEA BX,FACTOR ;取FACTOR地址放BX中 MOV AX,[BX] ;取FACTOR的值放AX中 (MOV BX,AX);把AX值给BX SHL BX,1 ;(BX)=(BX)* 2 (MOV CL,3);(CL)=3 SHL AX,CL ;(AX)=(AX)*8 ADD AX,BX ; (AX)*10=(AX)*8+(AX)*2 (AX)=0078H (BX)=0018H CF=0 加法里没有进位 SF=0 结果没有负数 PF=1 结果中二进制数里1的个数为偶数 ZF=0 结果不等0
OR CX,0FF00H ; (CX)=0FFABH
SUB AX,CX ; (AX)=0FFAAH - 0FFABH =0FFFFH
(AX)=0FFFFH
(CX)=0FFABH
结果AX的最高位为1 所以SF =1
FFAA-FFAB不够减的,所以有了借位 ,则CF=1
再问: 谢谢,大侠还可帮我看下这个吗? 将一个无符号数乘以10。该数存在地址为FACTOR的内存单元中 LEA BX,FACTOR MOV AX,[BX] ( 1 ) SHL BX,1 ( 2 ) SHL AX,CL ADD AX,BX 程序中(1)(2)该怎么填,如果(FACTOR)=0CH,运行程序后,AX,BX,的值,及FLAGS中,CF,SF,PF,ZF的数值
再答: LEA BX,FACTOR ;取FACTOR地址放BX中 MOV AX,[BX] ;取FACTOR的值放AX中 (MOV BX,AX);把AX值给BX SHL BX,1 ;(BX)=(BX)* 2 (MOV CL,3);(CL)=3 SHL AX,CL ;(AX)=(AX)*8 ADD AX,BX ; (AX)*10=(AX)*8+(AX)*2 (AX)=0078H (BX)=0018H CF=0 加法里没有进位 SF=0 结果没有负数 PF=1 结果中二进制数里1的个数为偶数 ZF=0 结果不等0