微机原理,判断标志位怎么变
来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/08/28 23:48:39
微机原理,判断标志位怎么变
完成下列十六进制数的运算,并给出个标志位!9090H-4AE0H=?
我知道答按是45B0H,可是为什么AF=0,OF=1呢?
这个数字哪里溢出了?为什么溢出了?还有为什么AF=0,不要把AF的定义给我说一遍,AF定义我知道!但是我看不太懂
完成下列十六进制数的运算,并给出个标志位!9090H-4AE0H=?
我知道答按是45B0H,可是为什么AF=0,OF=1呢?
这个数字哪里溢出了?为什么溢出了?还有为什么AF=0,不要把AF的定义给我说一遍,AF定义我知道!但是我看不太懂
计算机内部运算时数都是按补码表示的,最高位是符号位,因为9090H写为二进制为100100001001000,其最高位是1,因此看为负数,4AE0H写为二进制为0100101011100000,其最高位是中,因此是正数,现在为一个负数减一个正数,结果应为负数,而实际结果为45B0H,其最高位是0,表示为正数,因此结果产生溢出.
AF为辅助进位标志,它表示的是运算中第3位是否向第4位借位或进位(从右往左数,从第0位开始),如有则为1 如无则为0,9090H的后4位都为0,4AE0H的后4位也为0,作减法时没有借位,所以AF=0.
AF为辅助进位标志,它表示的是运算中第3位是否向第4位借位或进位(从右往左数,从第0位开始),如有则为1 如无则为0,9090H的后4位都为0,4AE0H的后4位也为0,作减法时没有借位,所以AF=0.