1
0
mirror of https://github.com/Didnelpsun/CS408.git synced 2026-02-08 21:34:41 +08:00

更新数据处理

This commit is contained in:
Didnelpsun
2021-09-01 23:17:30 +08:00
parent d64ecfec57
commit 70c1c19c8b
2 changed files with 119 additions and 1 deletions

File diff suppressed because one or more lines are too long

View File

@@ -247,7 +247,7 @@ k|2|3|4|5|6|7
+ 如果已知一个数值的补码,那么求这个值的负数的补码就是全部包括位取反,末位加一。
+ 如果已知一个负数的补码,那个求这个值的原码就是数值位取反再加一,或是负数补码中,最右边的$1$以及右边不变,最右边的$1$的左边取反。
+ 补码算术移位:将补码的符号位与数值位一起右移一位并保持原符号位的值不变,表示除二。
+ 变形补码:又称为模四部分,双符号位的补码小数,用$00$表示正,$11$表示负,用于完成算术运算的$ALU$部件中。
+ 变形补码:又称为模四补码,双符号位的补码小数,用$00$表示正,$11$表示负,用于完成算术运算的$ALU$部件中。
#### 移码
@@ -489,6 +489,11 @@ $y_n$(高位)|$y_{n+1}$(低位)|操作
+ 长整数转短整数:高位截断,保留低位。
+ 短整数转长整数:符号扩展。
1. 有符号数和无符号数之间的转换。例如,由$signed$型转换为等长$unsigned$型数据时,符号位成为数据的一部分,即负数转换为无符号数时,数值将发生变化。同理,由$unsigned$转换为$signed$时最高位作为符号位,也可能发生数值变化。
2. 数据的截取与保留。当一个浮点数转换为整数时,浮点数的小数部分全部舍去,并按整数形式存储。但浮点数的整数部分不能超过整型数允许的最大范围,否则溢出。
3. 数据转换中的精度丢失。四舍五入会丢失一些精度,截去小数也会丢失一些精度。此外,数据由$long$型转换为$float$型或$double$型时,有可能在存储时不能准确地表示该长整数的有效数字,精度也会受到影响。
4. 数据转换结果的不确定性。当较长的整数转换为较短的整数时,要将高位截去。例如,$long$型转换为$short$型,只将低$16$位送过去,这样就会产生很大的误差。浮点数降格时,如$double$型转换为$float$型,当数值超过$float$型的表示范围时,所得到的结果将是不确定的。
#### 定点数数据存储与排列
+ 数据最左边的高位就是最高有效字节$MSB$。