[计算机组成原理] 02 数据的表示和运算

Posted maets906

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[计算机组成原理] 02 数据的表示和运算相关的知识,希望对你有一定的参考价值。

[计算机组成原理] 02 数据的表示和运算(1)

进位计数制

十进制计数法

古印度人发明了阿拉伯数字:0,1,2,3,4,5,6,7,8,9 符号反应权重

十进制: 975 符号所在的位也反应权重

​ 9 x 100 + 7 x 10 + 5 x 1

​ 9 x 1 0 2 10^2 102 + 7 x 1 0 1 10^1 101+ 5 x 1 0 0 10^0 100

十进制数: K n K_n Kn K n − 1 K_n-1 Kn1 K 2 K_2 K2 K 1 K_1 K1 K 0 K_0 K0 K − 1 K_-1 K1 K − 2 K_-2 K2 K − m K_-m Km

​ = K n K_n Knx 1 0 n 10^n 10n+ K n − 1 K_n-1 Kn1x 1 0 n − 1 10^n-1 10n1+…+ K 2 K_2 K2x 1 0 2 10^2 102+ K 1 K_1 K1x 1 0 1 10^1 101+ K 0 K_0 K0x 1 0 0 10^0 100+ K − 1 K_-1 K1x 1 0 − 1 10^-1 101+ K − 2 K_-2 K2x 1 0 − 2 10^-2 102+…+ K − m K_-m Kmx 1 0 − m 10^-m 10m

有0~9,共十种符号。逢十进一。

推广:r进制计数法

r进制: K n K_n Kn K n − 1 K_n-1 Kn1 K 2 K_2 K2 K 1 K_1 K1 K 0 K_0 K0 K − 1 K_-1 K1 K − 2 K_-2 K2 K − m K_-m Km

​ = K n K_n Knx r n r^n rn+ K n − 1 K_n-1 Kn1x r n − 1 r^n-1 rn1+…+ K 2 K_2 K2x r 2 r^2 r2+ K 1 K_1 K1x r 1 r^1 r1+ K 0 K_0 K0x r 0 r^0 r0+ K − 1 K_-1 K1x r − 1 r^-1 r1+ K − 2 K_-2 K2x r − 2 r^-2 r2+…+ K − m K_-m Kmx r − m r^-m rm (1)

基数:每个数码位所用到的不同符号的个数,r进制的基数为r

二进制:0,1 二进制:101.1=1 x 2 2 2^2 22+0 x 2 1 2^1 21+1 x 2 0 2^0 20+1 x 2 − 1 2^-1 21=5.5

八进制:0,1,2,3,4,5,6,7 八进制:5.4=5 x 8 0 8^0 80+4 x 8 − 1 8^-1 81=5.5

十进制:0,1,2,3,4,5,6,7,8,9 十进制:5.5=5 x 1 0 0 10^0 100+5 x 1 0 − 1 10^-1 101=5.5

十六进制:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 十六进制:5.8=5 x 1 6 0 16^0 160+8 x 1 6 − 1 16^-1 161=5.5

不同进制的加法

二进制下,101.1+11.1=1001.0

八进制下,5.4+1.4=7.0

十六进制下,5.8+0.9=6.1

二进制是最适合用计算机来存储和处理的一种计数方式。

原因如下:

①可使用两个稳定状态的物理器件表示

②0,1正好对应逻辑值 假、真。方便实现逻辑运算

③可以很方便地使用逻辑门电路实现算术运算

任意进制转换为十进制

使用公式(1)可以将任意进制转换为十进制。

二进制和八进制、十六进制间的转换

十进制转换为任意进制

整数部分使用除基取余法

小数部分使用乘积取整法

注意:有的十进制小数无法用二进制精确表示,如:0.3

真值和机器数

BCD码

BCD:Binary-Coded Decimal,用二进制编码的十进制。

8421码

如果相加结果在合法范围内,则无需修正。

如果相加结果落在1010 ~ 1111之间(十进制的10 ~ 15),需要将结果再加上6D(0110B)。

这是因为四位二进制数最大是1111,只能表示0 ~ 15的数,对于十进制的10 ~ 15的数再加上一个6,就一定会向高位产生进位(1010+0110=1 0000),而低位留下的部分刚好就是所需的个位部分。eg: 13(1101)+6(0110)=1 0011,低位的0011转换为十进制

以上是关于[计算机组成原理] 02 数据的表示和运算的主要内容,如果未能解决你的问题,请参考以下文章

计算机组成原理数据的表示和运算

(计算机组成原理)第二章数据的表示和运算-第一节5:本章习题

(计算机组成原理)第二章数据的表示和运算-第三节1:浮点数的表示

(计算机组成原理)第二章数据的表示和运算-第三节3:浮点数加减运算

(计算机组成原理)第二章数据的表示和运算-第二节5:定点数乘法运算(原码/补码一位乘法)

(计算机组成原理)第二章数据的表示和运算-第一节:BCD码