计算机组成原理-2-数据表示与运算
2021-09-16 19:27:52 0 举报
AI智能生成
计算机考研-408 组成原理 第二章相关概念
作者其他创作
大纲/内容
定点数的表示与运算
定点数的表示
无符号数:整个机器字长全为数值位,没有符号。 n位数的表示范围 0~(2^n) - 1
有符号数:最高位位符号位。0→正、 1→负号。 表示范围和码的形式有关。
不同的码
原码
最高位表符号,其他表示真值。
小数: 【-(1 - 2^-n) <= x <= 1 - 2^-n】 对称
整数: 【-((2^n) - 1) <= x <= (2^n) -1】对称
0的表示: 【+0】= 00000 【-0】=10000
补码
符号位始终不变,数值为变化。 负数表示范围比正数多一。
正数数值为和原码一样,负数数值为各位取反,末位加一
小数: 【-1 <= x <= 1-(2^-n)】
整数:【-2^n <= x <= (2^n)-1】
0的表示:唯一 【+0】=【-0】=00000
【-x】的补码 = 【x】补码 符号位取反,数值位取反+1
反码
符号位始终不变,正数不变,负数符号位取反
小数:【-(1-(2^-n) <= x <= 1-(2^-n)】对称和原码一样
整数: 【-((2^n)-1 <= x <=(2^n)-1)】
0的表示不唯一 【+0】= 00000 【-0】11111
移码:一般表示浮点数的阶码,只能表示整数。 移码=补码的符号位取反
定点数运算
移位运算
算术移位
对象是有符号数,移位过程中符号位不变
注意移位过程中的添补原则
左移:把数据往左移,小数点右移。数据被放大。
逻辑移位
把操作数视为无符号数
不管左右移,都是补0
循环移位【要理解】
带进位标识符:进位标志符号和数据位一起参与移位
不带进位标志符:不管左右移动,进位标志位也随着改变
加减运算:相加直接运行,相减求出减数的相反值变成相加
溢出判断
一位符号位:若参加运算的两个数符号位相同,且结果符号位与之不相同。则溢出。
双符号位:结果双符号位相同:未溢出。 结果符号位不同:溢出。 最高位是真正的符号。
整数类型及转换
有无符号的转换:最高位被当作符号位或者数值为,其余不变。
不同字长的整数转换
大字长 → 小字长:多余的高位直接去掉
小字长 → 大字长:高位不够补符号位
浮点数的表示与运算
格式:N = (r^E) * M 【E:是阶码,M是尾数】
规格化:要求尾数的最高位是有效值。
左规:数据放大,阶码减小。 可能需要多次
右规:数据缩小,阶码增大。 只需要一次
IEEE754标准【短浮点数为例】
数符 | 阶码(补码) | 尾数(原码)
1 8 23
1 8 23
通式: (-1)^s * 1.M * 2(E-127)
【s=0 正;s=0负】【M最多为23个1】【E的取值 1~254】
1.M 的 1 一般省略,称为隐含尾数。
注意最值判断。
浮点数的运行步骤
对阶:小阶向大阶看齐。 小阶右移,缩小,使阶码变大。 对阶只存在右移
尾数求和:对阶后的尾数进行相加减
规格化:【双符号位】尾数的最高位与符号位不同时需要规格化。左规或者右规。
舍入:对阶和右规中可能会把尾数的低位丢失。末尾是0直接舍去,末尾是1舍去再加1。
溢出判断:浮点数的溢出由阶码的符号决定。双符号位为例:阶码符号位异号则溢出。
0 条评论
下一页
为你推荐
查看更多