计算机中的数及编码

计算机中的数及编码

1、机器数与真值

(1) 在计算机中数是用二进制来表示的

(高电平代表“1”,低电平代表“0”)

(2) 数的符号在计算机中也是用二进制数表示的。

“+”用“0”表示, “-”用“1”表示。

2、带符号数、无符号数

(1) 带符号数

用0表示正数,用1表示负数,这种表示数的方法,称为带符号数的表示方法,所表示的数称为带符号数。

(2) 无符号数

如果把全部有效位都用来表示数的大小,即没有符号位,这种方法表示的数,叫无符号数。

3、原码、反码及补码

(1) 原码

一个数的原码就是该数的机器数

例如:

​ X1 = +67 = +1000011B [X1] = 01000011B

​ X2 = -67 = -1000011B [X2] = 11000011B

在原码表示法中,数0的原码有两种形式:

[+0] = 00000000B [-0] = 10000000B

(2) 反码

正数的反码就等于它的原码;

负数的反码就是它的原码除符号位外,各位取反

例如:

​ X1 = +67 = +1000011B [X1] = 01000011B

​ X2 = -67 = -1000011B [X2] = 10111100B

在反码表示法中,数0的原码也有两种形式:

​ [ +0 ] = 00000000B [ -0 ] = 11111111B

(3) 补码

正数的补码就等于它的原码;

负数的补码就是它的反码加1

例如:

​ X1 = +67 = +1000011B [X1] = [X1] = 01000011B

​ X2 = -67 = -1000011B [X2] = [X2] + 1 = 10111101B

根据定义,0的补码仅有一种表现形式:

​ [ +0 ] = [ -0 ] = 00000000B

4、补码的运算

补码的运算就是计算机中数的运算。

(1) 补码的加法规则

[X + Y] = [X] + [Y]

例 :

​ X=+011 0110 ,Y=-111 1001,求X+Y=?

​ [X]= 0011 0110
​ +) [Y]= 1000 0111
​ [X]+ [Y] = 1011 1101

(2)补码的减法规则

[X - Y] = [X] + [-Y]

例:

​ X=+101 0101 ,Y= + 110 0001,求X - Y=?

​ [-Y]=1110 0001
​ [-Y]=1001 1110
​ [-Y]=1001 1111

​ [X] = 0101 0101
​ +) [- Y] = 1001 1111
​ [X] + [- Y] = 1111 0100

5、二进制编码

二进制编码是指用二进制代码来表示计算机中所要处理的数值、数字、字母和符号等,一般为若干位二进制数码的组合。

(1) 二进制编码的十进制数

二进制编码的十进制数 就是BCD码(Binary Coded Decimal)。

1️⃣ 压缩BCD码 用4位二进制数表示一位十进制数。一个字节表示两位十进制数。

2️⃣ 非压缩BCD码 用一个字节表示一位十进制数。高4位总是0。

计算机中的数及编码
(2) 字母和字符的编码

计算机不仅要处理数值问题,还要处理大量的非数值问题,这就必须引入文字、字母,某些专用的符号,这就是目前应用最广泛的字符编码系统ASCII码。(American Standard Code for Information Interchange,美国信息交换标准码)

计算机中的数及编码
上一篇:跨越空间,GL的TP之术


下一篇:运筹学笔记3线性规划问题的几何特征