导读:计算机组成原理—中央处理器(1).四、计算机的运行方式.1.有符号数和无符号数.计算机的数均存在寄存器中,通常称寄存器的位数为机器字长.1.1无符号数.没有表示符号的数,每一位均可存放数值。eg:若机器字长16位,则可表示无符号数的范围为0-65535(2^16 - 1).1.2
计算机的数均存在寄存器中,通常称寄存器的位数为机器字长
没有表示符号的数,每一位均可存放数值。eg:若机器字长16位,则可表示无符号数的范围为0-65535(2^16 - 1)
符号的“+”、“-”用“0”和“1”来表示。0= >正;1=>负
真值:带有正负的二进制数字表达
机器数:真值的机器表示
计算码值。前提:已知真值
| 原码 | 反码 | 补码
正数整数 | 0,真值 | 同原码 | 同原码 |
正数小数 | 0.小数后真值 | 同原码 | 同原码 |
负数整数 | 1,去负号真值 | 首位不变,后位取反 | 首位不变,最后1位加1 |
负数小数 | 1.小数后无负号真值 | 首位不变,后位取反 | 首位不变,最后1位加1 |
以8进制为例,不同码对应的真值范围
已知真值,求其移码
移码 = 真值 + 2^n(真值位数) 最高位为正负位
注:二进制的加减法
N = S * r^j
S:是尾数(可正可负,首位非零)
j:为阶数(可正可负)
r:为基数(2、4、8、16进制)
eg:N = 11.0101 =>0.110101 * 2^10(二进制)
| 定点数 | 浮点数
范围 | 小 | 大 |
精度 | 低 | 高 |
运算步骤 | 少 | 多 |
溢出判断 | 本身判断 | 规格化阶数判断 |
小数点不动,左移,绝对值增大;反之减小
符号位不变 +
全部换成补码进行 +运算
注 :超出的位丢掉,所得的结果为补码(要还原)
一个符号位:正正 ->负或是负负->正为溢出;若有进位,则与原操作 数符号对比,相同,未溢出,反之,溢出
两个符号位:10/01为溢出,最高位为正真的符号位
先写出要运算的数的计算机补码表示
再求阶差
结果为负且等于(注意结果是补码) -2,说明y的阶大于x的阶,x->y对齐:尾数向右移动两位,x的阶要增大2
直接相加即可
左规:将结果00.0xxx => 00.1xxx
将结果11.1xxx => 11.0xxx
尾数向左移动,阶数减小
右规:将结果01.xxx ->00.1xxx
将结果10.xxx ->11.0xxx
尾数向右移动,阶数减大
“0”舍“1”入,尾数右移时,同”四舍五入“
”恒置1“法,尾数右移时,最右位恒为1
根据阶码来判断
上一篇:Uber SRE 实践:运维大型
下一篇:umich cv-3-2