早教吧作业答案频道 -->数学-->
计算机组成原理补码符号扩展现在有一int变量x的值为-513,要求x的补码12位表示?符号扩展为16位表示?右移一位后的16表示?我想-513的原码为101000000001(12位),那么其反码是110111111111(12位)
题目详情
计算机组成原理 补码 符号扩展
现在有一int变量x的值为-513,要求x的补码12位表示?符号扩展为16位表示?右移一位后的16表示?
我想-513的原码为1010 0000 0001(12位),那么其反码是1101 1111 1111(12位),扩展为16位就是高8位全是1,所以符号扩展后是1111 1101 1111 1111(16位),右移一位后是1111 1110 1111 1111(16位).
但我的结果和答案不太一样,大家看看我这样做对吗?
现在有一int变量x的值为-513,要求x的补码12位表示?符号扩展为16位表示?右移一位后的16表示?
我想-513的原码为1010 0000 0001(12位),那么其反码是1101 1111 1111(12位),扩展为16位就是高8位全是1,所以符号扩展后是1111 1101 1111 1111(16位),右移一位后是1111 1110 1111 1111(16位).
但我的结果和答案不太一样,大家看看我这样做对吗?
▼优质解答
答案和解析
你的思路是正确的,只是你的表述有误,在第二行中间“反码”应改为“补码”.
下面给你捋一遍整个过程.
首先将给出的数根据给定位数用原码表示(无论正数负数).即-513的原码为1010 0000 0001(12位).
其次,求出上述原码相对应的补码,符号位不变,其它位变反后加一.即-513的补码为1101 1111 1111(12位).
然后,对求出的补码进行符号扩展(取符号位填充到数的前方使其凑足位数,其它位保持不变直接写到低位).注意与原码的符号扩展不一样.即1111 1101 1111 1111(16位).
最后,对补码进行算术右移.负数补码的算术右移是添1.注意与逻辑右移、负数原码、正数算术右移区别.结果是1111 1110 1111 1111(16位).
你的结果是正确的,只是其中涉及一些概念必须弄清楚,否则容易混!
下面给你捋一遍整个过程.
首先将给出的数根据给定位数用原码表示(无论正数负数).即-513的原码为1010 0000 0001(12位).
其次,求出上述原码相对应的补码,符号位不变,其它位变反后加一.即-513的补码为1101 1111 1111(12位).
然后,对求出的补码进行符号扩展(取符号位填充到数的前方使其凑足位数,其它位保持不变直接写到低位).注意与原码的符号扩展不一样.即1111 1101 1111 1111(16位).
最后,对补码进行算术右移.负数补码的算术右移是添1.注意与逻辑右移、负数原码、正数算术右移区别.结果是1111 1110 1111 1111(16位).
你的结果是正确的,只是其中涉及一些概念必须弄清楚,否则容易混!
看了 计算机组成原理补码符号扩展现...的网友还看了以下:
已知向量a=(2,1),b=(x,y).(1)若x∈{-1,0,1,2},y∈{-1,0,1},求向 2020-03-30 …
求一数列.高2.a(n+1)=2an/2an+1已知a1=1a(n+1)=2an/2an+1求数列 2020-04-25 …
S=(1+1/1*2+(2+1/2*3)+(3+1/3*4)+...+(20+1/20*21)S= 2020-04-27 …
设函数f(x)=(2^x)/(1+2^x)-1/2,[x]表示不超过x的最大整数,则函数y=[f( 2020-04-27 …
设函数f(x)=(1+1/n)的n次方(n∈正整数,n大于1,x∈r)1,对于任意x,证明(f(2 2020-05-14 …
几道数学计算题(请写过程)第一题1/2+(1/3+2/3)+(1/4+2/4+3/4)+…+(1/ 2020-05-16 …
2^2-1^2=2*1+13^2-2^2=2*2+14^2-3^2=2*3+1……(n+1)^2- 2020-05-19 …
计算机组成原理浮点数加减运算设浮点数的格式为:阶码5位,包含1位符号位,尾数5位,包含1位符号位, 2020-07-30 …
(1)已知a+b=-c,则a(1/a+1/b)+b(1/a+1/c)+c(1/a+1/b)的值是多少 2020-10-31 …
计算一道数学题,(1+1/2)×(1+1/3)×(1+1/4)×(1+1/5)×(1+1/6)×(1 2020-11-30 …