选D 地址寄存器MAR是存储器部件 访存时暂存访存地址
符号位不变 附加位是符号位的扩展
选B
A:检查加减
B:对 因为两个符号位一样
D:需要两个 存储单元把信号同时传给两个单元
用双符号位的方法
同0异1
符号相同 0 正
不同 为1 负
逻辑一样
原来N位 移位N位 加上一位符号位
不够减 余数为负数的时候 才回复余数
所以可能是N+1次 恢复余数就是N+2次 (书里没找到)
选C
移位+加法
没让你计算 只是理解电路的原理而已
[B]补<------->[-B]补
方法1:全部位按位取反 末位+1
方法2:从右往左找到第一个1 从该数的左边(不包括该1)全部位按位取反(包括符号位)
会做 异号相加是不会溢出的
截图
写出9的补码 再等出[-9]补 做错粗心
截图 有表格
不会做
转化为十进制数
r1: 1111 1110 原码:1000 0010 -2
r2: 1111 0010 1000 1110 -14
r3: 1001 0000 1111 0000 -112
r4: 1111 1000 1000 1000 -8
都是负数 负数补码转化为原码 从右往左找到第一个1…符号位不变
8位(8位里包括一位符号位)能表示的最大正数 2^7-1=127
r2*r3=1568>127 表示不了
若不按边界对齐的话,可能一个数据要取两次
36.A
该计算机的机器数是补码
判断溢出的方法:符号位的进位与最高位的进位相同,则没有溢出
两个进位异或 =0 无溢出 =1 溢出
37.会做 上溢
38.D
2^15 = 32768
32767=0111 1111 1111 1111
[32676]补码 = 0111 1111 1111 1111
[-32767]补码 (从右往左第一个1开始 左边按位取反 包括符号位)= 1000 0000 0000 0001
再转化为无符号数 2^15+1=32769
- 讲解是用十进制计算后再转化为2进制
42.本题当做补码来做 逻辑右移高位补0 算术右移:最高位当做符号位
43.感觉他好像讲错了 他判断最高位进位和符号位进位是通过十六进制相加的方式 可以这样吗 F+1进位 F+1进位 都进位 不溢出
我:转化为二进制 1111 1111 1111 1111 1111 1111 1111 1111
0000 0000 0000 0000 0000 0000 0001 0000
最高位1+1 进位
符号位1+1 进位
都进位 所以不溢出
R1真值是-1
R2真值是-16
做减法只需要看有没有借位:-1-(-16) 大减去小的 没有借位