软件考试—计算机组成原理—原码、反码、补码、浮点数运算、汉字编码(国标码、机内码、区位码)
当数值为正数时,原码 = 反码 = 补码。
当数值为负数时:
先求出其原码。
反码等于原码符号位不变,其余位取反。
补码等于反码加一(即反码的最后一位加一)。
移码等于补码符号位取反,常用作浮点运算中的阶码。
| 数值1 | 数值-1 | 1-1 | |
|---|---|---|---|
| 原码 | 0000 0001 | 1000 0001 | 1000 0010 |
| 反码 | 0000 0001 | 1111 1110 | 1111 1111 |
| 补码 | 0000 0001 | 1111 1111 | 0000 0000 |
| 移码 | 0000 0001 | 0111 1111 | 1000 0000 |
下面是数值的表示范围:

特殊的补码:1000 0000 表示为十进制的-128。
-----------------------------------------------------------------------------------------------------
浮点数:
浮点数表示:
N = M*
M为尾数,e是指数,R为基数。
浮点数运算:对阶-->尾数计算-->结果格式化。
对阶:小阶向大阶对齐。
-----------------------------------------------------------------------------------------------------
8421码(有权码):即四位二进制的权值从高到低分别为8、4、2、1。
余3码(无权码):在8421码的基础上,把每个数的代码加上0011后构成的。
格雷码(无权码):相邻的两个代码之间只有一位不同。
| 十进制数 | 8421BCD码 | 余3BCD码 | 格雷码 |
|---|---|---|---|
| 0 | 0000 | 0011 | 0000 |
| 1 | 0001 | 0100 | 0001 |
| 2 | 0010 | 0101 | 0011 |
| 3 | 0011 | 0110 | 0010 |
| 4 | 0100 | 0111 | 0110 |
| 5 | 0101 | 1000 | 1110 |
| 6 | 0110 | 1001 | 1010 |
| 7 | 0111 | 1010 | 1000 |
| 8 | 1000 | 1011 | 1100 |
| 9 | 1001 | 1100 | 0100 |
-----------------------------------------------------------------------------------------------------
国标码、机内码、区位码的关系:
国标码 = 区位码 + 2020H;
机内码 = 国标码 + 8080H;
运算规则如下:
1,区位码的前两位为区码、后两位为位码。
2,将区码和位码分别转换为十六进制;
3,十六进制的区位码 + 2020H = 国标码;
4,国标码 + 8080H = 机内码。
例题:“中”字的区位码为5448,求出其国标码和机内码。
答:
区码54转换为十六进制为36,位码48转换为十六进制为30.
36 30 H
+ 20 20 H
= 56 50 H
#国标码为5650H
5 6 5 0 H
+ 8 0 8 0 H
= 13 6 13 0 H
= D 6 D 0 H
#机内码为D6D0H
1,输入码主要分为三类:数字编码、拼音码、字形码。
数字编码常用的是国标区位码;
2,内部码:是汉字在设备和信息处理系统内部存储、处理、传输汉字用的代码。
常用国家标准局GB2312—1980中规定的汉字国标码,两个字节存放一个汉字的内码,每个字节的最高位置1,作为汉字机内码。
3,字形码:表示汉字字形的字模数据,用点阵表示的汉字字形码。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)