题目内容 (请给出正确答案)
[主观题]

将R5、R4中双字节二进制数取补,结果仍放在R5、R4中。

暂无答案
如搜索结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能会需要:
您的账号:
发送账号密码至手机
发送
更多“将R5、R4中双字节二进制数取补,结果仍放在R5、R4中。”相关的问题

第1题

图7-5所示的流程图描述了对8位二进制整数求补的算法。该算法的计算过程如下:从二进制数的低位(最右位)开始,依次向高位逐位查看,直到首次遇到“1”时,停止查看。然后,对该“1”位左面的更高位(如果有的话),逐位求反,所得的结果就是对原二进制数求补的结果。

例如:对二进制整数10101000求补的结果是01011000。

设8位二进制整数中的各位,从低位到高位,依次存放在整型数组BIT的BIT[1]~BIT[8]

中。例如,二进制整数10101000存放在数组BIT后,就有BIT[1]=0, BIT[2]=0, …, BIT[7]=0, BIT[8]=1。若流程图中存在空操作,则用NOP表示。

流程图中(1)处按“循环变量名:循环初值,增量,循环终值”格式描述。

[解析] 本题考查求补运算。求补运算是对一个数的各二进制位按位求反后再加1。例如:二进制10101000按位求反后得到的二进制是01010111,加1后为01011000。也可以这样来看,原二进制从最右边开始到遇到的第1个1为止都不变,而后面剩下的位按位求反即可。

本题流程图采用的是后一种思路,首先设置一个标志sw的值为0,从最右边一位开始往左循环遍历整个二进制数,到遇到第1个1后将标志位置1。由此可见,循环要进行8次,循环变量值依次从1递增到8。根据题目要求按“循环变量名:循环初值,增量,循环终值”格式描述循环,而循环开始下面一条判断是“BIT[i]=1?”,所以循环变量是i,第1空应填i:1,1,8。

如果当前遍历的二进制位BIT[i]是1,且标志sw为0时,则证明是第1次遇到1,所以直接设置sw为1即可,故第2空应填1→sw。

如果当前遍历的二进制位BIT[i]是1,且标志sw为1时,说明已经不是第1次遇到1了,所以直接设置当前二进制位为0即可,故第3空应填0→BIT[i]。

如果当前遍历的二进制位BIT[i]是0,且标志sw为0时,则证明还没有遇到过一次1,所以该步什么都不用做,故第4空应填NOP。

如果当前遍历的二进制位BIT[i]是0,且标志sw为1时,说明已经遇到过1了,所以该步需将当前的二进制位求反,故第5空应填1→BIT[i]。

点击查看答案

第2题

已知两个浮点数,阶码为3位二进制数,尾数为5位二进制数,均用补码表示。

[X]补=0.1101×2001,[y]补=1.0111×2011

则两个数的和[x+y]补=(1),并说明规格化数的要求是(2)。

A.0.1001×20011

B.1.1001×2011

C.1.0010×2010

D.1.0011×2010

点击查看答案

第3题

字符串str由数字字符‘0’和‘1’组成(长度不超过8个字符),可看作二进制数,请补充函数fun(),该函数的功能是:把str字符串转换成十进制数,结果由函数返回。例如,输入“1001”,结果输出:9。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。

试题程序:

include<stdio.h>

include<stdlib.h>

include<string.h>

int fun(char *str)

{

int n;

char *p=str;

【 】;

p++;

while (*p)

{

n=【 】;

p++;

}

return【 】;

}

main()

{

char str[9];

int i;

int n;

printf ("Enter a string made up of '0' and

'1' digital character:");

gets (str);

if (strlen(str)>8)

{

printf ("Error:string too longer!

please input again !\n\n");

exit(0);

}

for(i=0;str[i];i++)

if(str[i]<'0'||str[i]>'1')

{

printf("Error:%c not is '0'and

'1' digital character !\n\n",

str[i]);

exit(0);

}

printf("The original string:");

puts(str);

n=fun(str);

printf("\n%s is convered to decimal

number:%d\n\n",str,n);

}

点击查看答案

第4题

设有二进制数[x]补=11001001,则x为( )。

A、-55

B、-73

C、55

D、73

点击查看答案

第5题

将十进制数-0.3125化成定点二进制补码表示的小数是(5)。将该数表示成二进制浮点规格化数,其阶码3位,尾数5位(均含1位符号),都用补码表示,该浮点数是(6)。

A.1.0101

B.0.0101

C.1.1011

D.0.1011

点击查看答案

第6题

将十进制分数+,-化成5位定点二进制小数(含1位符号),用补码表示它们是(5),二数相加求和时,为了判断结果溢出可采用(6)方法。

A.0.1010,0.1101

B.0.1010,1.0011

C.0.1010,1.1101

D.1.1010,0.1101

点击查看答案

第7题

二进制数转换为八进制数时,转换方法正确的是()

A、从最低位开始以3位分组,不足3位的前面补0。

B、从最高位开始以3位分组,不足3位的后面补0。

C、对整数部分采用从最低位开始以3位分组,不足3位的前面补0,对小数部分采用从最高位开始以3位分组,不足3位的后面补0,然后每组以其对应的八进制数代替。

D、连续除以8取余,先得到的余数为最低位

点击查看答案

第8题

某十六进制数的等值二进制数的原、补、反码(不一定是这个顺序)分别是101011010,101011011,110100101,该十六进制数为(  )。

  A.5A  B.-DAI  C.A5  D.-A5

点击查看答案

第9题

已知二进制数x=0.10101,y=-0.11011,求[x÷y]补并还原成真值。

点击查看答案

第10题

已知二进制数x=-0.1011,y= -0.1101,用补码1位乘法计算[x·y]补。

点击查看答案
热门考试 全部 >
相关试卷 全部 >
账号:
你好,尊敬的上学吧用户
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,
如果您知道正确答案,欢迎您来纠错

警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
上学吧
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
上学吧
点击打开微信