阅读下列说明和流程图2-3,将应填入(n)的字句写在答题纸的对应栏内。 【说明】 下面的流程图描述了对8位二进制整数求补的算法。 该算法的计算过程如下:从二进制数的低位(最右位)开始,依次向高位逐位查看,直到首次遇到“1”时,停止查看。然

admin2009-02-15  28

问题 阅读下列说明和流程图2-3,将应填入(n)的字句写在答题纸的对应栏内。
   【说明】
   下面的流程图描述了对8位二进制整数求补的算法。
   该算法的计算过程如下:从二进制数的低位(最右位)开始,依次向高位逐位查看,直到首次遇到“1”时,停止查看。然后,对该“1”位左面的更高位(如果有的话),逐位求反,所得的结果就是对原二进制数求补的结果。
   例如:对二进制整数10101000求补的结果是01011000。
   设8位二进制整数中的各位,从低位到高位,依次存放在整型数组BIT的B1T[1]~BIT[8]中。例如,二进制整数10101000存放在数组BIT后,就有BIT[1]=0,BIT[2]=0,…,BIT[7] =0,BIT[8]=1。若流程图中存在空操作,则用NOP表示。
   【流程图】
   注:流程图中(1)处按“循环变量名:循环初值,增量,循环终值”格式描述。

选项

答案(1)i:1,1,8 (2)1→sw (3)0→BIT[i] (4)NOP,或空操作 (5)1→BIT[i]

解析 根据题意,从二进制数的低位(最右位)开始,依次向高位逐位查看,直到首次遇到“1”时,停止查看。然后,对该“1”位左面的更高位(如果有的话),逐位求反,所得的结果就是对原二进制数求补的结果。所以(1)空是8次循环根据BIT的值判断相应补数的值, (2)~(5)空是分支处理的结果。
转载请注明原文地址:https://kaotiyun.com/show/twDZ777K
0

最新回复(0)