汇编语言 标志寄存器 状态位的问题: MOV AX,34C5H ADD AX,546AH
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/07 10:56:15
汇编语言 标志寄存器 状态位的问题: MOV AX,34C5H ADD AX,546AH
解:0011010011000101
0101010001101010
-------------------------------------
1000100100101111
答案是:CF:0;SF:1;ZF:0;AF 0;OF 1;PF:0;
CF,SF,ZF,PF都好理解:CF,由于没有存在进位的情况,所以为0 ;SF由于跟最高位相同,所以为1;ZF由于结果不为零,所以为0;PF由于低8位1的个数为5,为奇数,所为为0.
但是OF跟AF难以理解——结果也没有溢出啊?AF,应该在低字节向高节有进位的,但却为1.是不是搞反了?
解:0011010011000101
0101010001101010
-------------------------------------
1000100100101111
答案是:CF:0;SF:1;ZF:0;AF 0;OF 1;PF:0;
CF,SF,ZF,PF都好理解:CF,由于没有存在进位的情况,所以为0 ;SF由于跟最高位相同,所以为1;ZF由于结果不为零,所以为0;PF由于低8位1的个数为5,为奇数,所为为0.
但是OF跟AF难以理解——结果也没有溢出啊?AF,应该在低字节向高节有进位的,但却为1.是不是搞反了?
of是溢出标志,是真对有符号数而言.所有的计算都认为是有符号数,由于次高位与最高位的进位不一样所以溢出,但编程时应该知道,假如它是无符号数,用CF判断有无进位,OF就没有意义
af是辅助进位标志,是低4位向高4位有进位时为1,这里没有进位就是0
再问: OF溢出标志位现在我已搞懂了。 AF辅助进位标志,在这里难道不是看倒数第8位的进位情况?百度百科的解释是:“ AF(Auxiliary Carry Flag)辅助进位标志:在字节操作时低半字节向高半字节进位或借位,字操作时低字节向高字节进位或借位,AF置1,否则置0。 ” 这里是字操作,应该是看低字节的最高位呀!请解释。
再答: AF主要是用于BCD码调整时用的一个标志位,只对字节中的低4位进位指示
af是辅助进位标志,是低4位向高4位有进位时为1,这里没有进位就是0
再问: OF溢出标志位现在我已搞懂了。 AF辅助进位标志,在这里难道不是看倒数第8位的进位情况?百度百科的解释是:“ AF(Auxiliary Carry Flag)辅助进位标志:在字节操作时低半字节向高半字节进位或借位,字操作时低字节向高字节进位或借位,AF置1,否则置0。 ” 这里是字操作,应该是看低字节的最高位呀!请解释。
再答: AF主要是用于BCD码调整时用的一个标志位,只对字节中的低4位进位指示
写出每条汇编指令执行后,相关寄存器中的值 mov ax,62627 AX= mov ah,31h AX= mov al,
汇编语言状态标志 ax=5678H bx=9abch add ax,bx ax=?sf=?zf=?pf=?
溢出标志和符号标志mov ax,7ff0hadd al,10h ;0f=?,sf=?add ah,1 ;0f=?,sf=
汇编语言mov 【ax+2】,bx的目的操作数地址
7、MOV AH,7896H ADD AL,AH 上述指令执行后,标志位CF和OF的值是CF=( 1 ),OF=( 0
汇编语言错误 mov ax,es:[bx]
高分求汇编语言答案.1.设AX寄存器中有一个10位二进制数,编写程序,统计AX中“1”的个数,统计结果送入CX
汇编语言的程序开始都有 PUSH DS MOV AX,0 PUSH AX 这三段有什么作用?
汇编语言ADD的问题MOV A #34HADD A #DEH是 22H CY=1还是 12H CY=1ADD书上说的是不
汇编指令中给AX寄存器清0并使CF=0,下面那个是错的:MOV AX,0 XOR AX,AX SUB AX,AX AND
急,每条指令的功能 MOV AX,0 DEC AX ADD AX,7FFF ADD AX,2 NOT AX SUB AX
汇编语言中and ax ax 还有or ax ax 具体作用是什么都改变了什么标志位?求详解