阅读以下说明和流程图,回答问题1和问题2。
【说明】
设8位二进制代码B0B1…B7中的最高位B0为奇偶校验位。对于任何给定的代码
B1B2…B7,可按下式计算偶校验位:
其中,“”表示“异或”运算。
下面的流程图描述了计算偶校验位的过程。
【流程图】
注:流程图中,循环开始的说明按照“循环变量名:循环初值,循环终值,增量”格式描述。
将流程图中的(1)~(4)处补充完整。
第1题:
阅读下列说明和流程图,将应填入(n)的语句写在对应栏内。
【流程图】
下面的流程图描述了对16位二进制整数求补的算法。计算过程是:从二进制数的低位 (最右位)开始,依次向高位逐位查看,直到首次遇到“1”时,停止查看。然后,对该“1”位左面的更高位(如果有的话),逐位求反,所得的结果就是对原二进制数求补的结果。
例如:对二进制整数10111001 10101000求补的结果是01000110 01011000。
设16位二进制整数中的各位,从低位到高位,依次存放在整型数组BIT的BIT[1]~BIT[16]中。例如,二进制整数10111001 10101000存放在数组BIT后,就有BIT1[1]=0, BIT[2]=0,……,BIT[15]=0,BIT[16]=1。
流程图(如图1所示)中(1)处按“循环变量名:循环初值,增量,循环终值”格式描述。若流程图中存在空操作,则用NOP表示。
第2题:
阅读以下说明,回答问题,将解答填入对应的解答栏内。
. [说明] 请完成流程图以描述在数据A(1)至A(10)中求最大数和次大数的程序的算法。并将此改成PAD图。该算法的流程图如下图:
第3题:
●试题一
阅读下列说明和流程图,将应填入(n)的语句写在答题纸的对应栏内。
【流程图】
图1
下面的流程图描述了对16位二进制整数求补的算法。计算过程是:从二进制数的低位(最右位)开始,依次向高位逐位查看,直到首次遇到"1"时,停止查看。然后,对该"1"位左面的更高位(如果有的话),逐位求反,所得的结果就是对原二进制数求补的结果。
例如:对二进制整数10111001 10101000求补的结果是01000110 01011000。
设16位二进制整数中的各位,从低位到高位,依次存放在整型数组BIT的BIT[1]~BIT[16]中。例如,二进制整数10111001 10101000存放在数组BIT后,就有BIT1[1]=0,BIT[2]=0,……,BIT[15]=0,BIT[16]=1。
流程图(如图1所示)中 (1) 处按"循环变量名:循环初值,增量,循环终值"格式描述。若流程图中存在空操作,则用NOP表示。
第4题:
阅读以下说明和流程图,回答问题1-2,将解答填入对应的解答栏内。
[说明]
下面的流程图采用欧几里得算法,实现了计算两正整数最大公约数的功能。给定正整数m和 n,假定m大于等于n,算法的主要步骤为:
(1)以n除m并令r为所得的余数;
(2)若r等于0,算法结束;n即为所求;
(3)将n和r分别赋给m和n,返回步骤(1)。
[流程图]
[问题1] 将流程图中的(1)~(4)处补充完整。
[问题2] 若输入的m和n分别为27和21,则A中循环体被执行的次数是(5)。
第5题:
阅读以下说明和流程图,回答问题将解答填入对应栏。
[说明]
下面的流程图,用来完成计算一组数组中的中值,其方法是:将数组中的一个值与其他值比较,并计算大于等于被比较数的数值的个数,以及小于等于被比较数的数值的个数,如果两数都大于n/2,则已经找到了中值,否则继续之前的步骤。
注:流程中循环开始的说明按照“循环变量:循环初值,循环终值,增量”格式描述;
[问题]
将流程图的(1)~(5)处补充完整。