某机器字长为8位,已知[X]补=7FH,Y=-1,则进行[X]补-[Y]补运算后,符号标志位SF、溢出标志位OF分别为多少
有四个选项,A、1,0;B、0,1;C、0,0;D1,1.但是我算出来选A.请问您觉得呢,给出具体计算过程
人气:326 ℃ 时间:2020-02-20 15:04:53
解答
首先说一下OF:溢出标志位.当算术运算的结果超出了带符号数的范围,即溢出时,OF=1,否则OF=0.
可以看到,决定OF是0还是1的关键在于“计算结果是否溢出”.
再来看“带符号数运算时的溢出判断”:
1.如果次高位向最高位有进位(或借位),而最高位向上无进位(借位),结果溢出.
2.反过来,如果次高位向最高位无进位(或借位),而最高位向上有进位(或借位),结果也溢出
理解这些概念后,再来看本题.SF=1应该没有问题吧,着重讲讲OF
[X]补=7FH=0111 1111B
[Y]原=1000 0001B[Y]补=1111 1111B
[X]补-[Y]补=01111111-11111111=1000 0000
其中,次高位1-1=0,向最高位无借位,最高位0-1=1,向上有借位,所以结果溢出.OF=1
换种方法验证一下:
根据补码的减法规则:[X]补-[Y]补=[X]补+[-Y]补
[X]补=0111 1111B
-Y=1[-Y]补=0000 0001B
[X]补+[-Y]补=01111111+00000001=10000000
其中,次高位1+0=0(加上前一位的进位),向最高位有进位,最高位0+0=1(加上次高位的进位),向上无进位,所以结果溢出.OF=1
还可以通过十进制验算:
[X]补=0111 1111B=127D
[Y]补=1111 1111B=255D
[X]补-[Y]补=127-255=-128
这时,我们其实是把这两个补码当做了原码来计算,而8位二进制数原码所能表示的范围是:
-127~127
-128这个计算结果是超出范围的,发生溢出,故而OF=1.
推荐
- 某机器字长8位,已知(X)补=7FH,Y=-1,则进行(X)补-(Y)补运算后,符合标志位SF,溢出标志位OF分别为多少?
- 汇编语言.两有符号数运算,如何自己判断是否溢出?当of=1,sf=1,为什么实际运算结果为正?
- 溢出标志和符号标志
- 简述OF与CF标志位分别表示什么含义?哪一个用来表示有符号数溢出?有符号数计算结果溢出判断规则是什么?哪一个用来表示无符号数溢出?对于有/无符号数计算,当发生溢出操作,计算结果是否正确?
- 设机器字长为8位,最高位为符号位,用双高位法判别下列数据在运算时是否有溢出.
- 郭沫若写《天上的街市》写作背景是什么?
- 用下面的词语组成一个陈述句,再写出与它意思相同的两个句子.
- 成数,折数的意义,含义是什么?
猜你喜欢
- 小东看叔叔锯木头,锯一次木头要2分钟,叔叔把木头锯成5段,叔叔请小东算一算需要几分钟?
- 一辆汽车从A地开往B地,前3小时行了180千米,照这样的速度,还要1.5小时才能到达,AB两地相距多远?
- 你让我感到害怕,英语怎么说?
- 某同学做了一次较为精确的测定匀加速直线运动的加速度的实验,实验所得到的纸带如图所示,设0点是计数的起始点,两计数点之间的时间间隔为0.1s,则第一个计数点与0点的距离s1应为__________cm,物体的加速度________
- “我”上学了,还是不断收到姥姥寄来的剪纸,其中表达姥姥对‘我’的期待的一副剪纸是这样的
- 三七五折等于几成
- 小红计算两个数的加法时,把其中一个加数个位上的0漏掉了,结果算出的和是37,已知正确答案是91,那么这
- 如图所示的是闭合电路的一部分导体在两磁极间的运动情形.图中小圆圈代表导体的横截面,a、b、c、d表示运动中四个不同位置.图中箭头表示在那个位置上的运动方向.导体在_位置会产