ZKX's LAB

进位输出c和借位标志cf 微机原理 关于CF进位标志的疑问

2020-10-11知识17

汇编语言进位与借位的问题.

进位输出c和借位标志cf 微机原理 关于CF进位标志的疑问

运算产生了借位 以8位2进制数为例,2的补码是00000010,-3的补码是11111101,两个相加,结果是11111111(是-1的补码),不会产生进位.2-3没有借位,CF的值是0.

进位输出c和借位标志cf 微机原理 关于CF进位标志的疑问

CF进位标志怎么判断? 因为cf的本质是无符号数的进位/借位标志,所以用两种方法算,cf的确是不一样的。cf计算出不一样是因为你第二种用了补码,已经把它看成有符号数了,这时候的cf没有意义。但是回归本质,你应该用无符号数来算cf,2345h小于3219h,无符号数相减为负,需要借位,cf为1。

进位输出c和借位标志cf 微机原理 关于CF进位标志的疑问

进借位标志CF怎么算 b=-1;变补码为FFFF FFFFH,0减-1等于0000 0000H+0000 0000H+1=0000 0001H,此时进2113位输出5261C=0,减法运算时的借位标志CF=C异或1=1。4102符号标志位(SF):当运算结果的最高位为1时SF=1,否则1653SF=0。溢出标志位(OF):当算术运算结果超出了带符号数的范围,即溢出时,OF=1,否则OF=0。扩展资料:奇偶标志位(PF):当运算结果中低8位的“1”的个数为偶数时PF=1,为奇数时,PF=0。辅助进位(AF):在加(减)法操作中,bit3向bit4有进位(借位)发生时,AF=1,否则AF=0。DAA和DAS指令测试这个标志位,以便在BCD加法或减法之后调整AL中的值。1字节为8bit 对应为 bit7|bit6|bit5|bit4 bit3|bit2|bit1|bit0 前四个为高4位,后四个为低4位AF就是用来判断 中间进位没有。即8位二进制操作数 第四位有无进位给第五位。参考资料来源:-状态标志

微机原理 关于CF进位标志的疑问 因为cf的本质是无符号数的进位/借位标志,所以用两种方法算,cf的确是不一样的。cf计算出不一样是因为你第二种用了补码,已经把它看成有符号数了,这时候的cf没有意义。但是回归本质,你应该用无符号数来算cf,2345h小于3219h,无符号数相减为负,需要借位,cf为1。

进借位标志CF怎么算? b=-1;变补码为FFFF FFFFH,0减-1等于0000 0000H+0000 0000H+1=0000 0001H,此时进位输出C=0,减法运算时的借位标志CF=C异或1=1.

书上说CF记录运算时从最高有效位产生的进位值或借位值。当最高有效位有进位或借位时CF=1。 在DEBUG中输入并运行如下程序(数值无H后缀,默认为16进制数)MOV DX,3219MOV AX,2345SUB AX,DXINT 3运行结果,显示相应标志为CY,即CF=1,有借位。

微机原理 关于CF进位标志的疑问

#穿越火线#补码#微机原理#符号计算

随机阅读

qrcode
访问手机版