预习原码补码

试题1
1000 0111
试题2
1111 1000
试题3
1111 1001
试题4
0111 1001
试题5
1000 0011
试题6
1111 1100
试题7
1111 1101
试题8
0111 1101
试题9
1000 0010
试题10
1111 1101
试题11
1111 1110
试题12
0111 1110
试题13
0000 0111
试题14
0000 0111
试题15
0000 0111
试题16
1000 0111
试题17
0000 0011
试题18
0000 0011
试题19
0000 0011
试题20
1000 0011
试题21
0000 0001
试题22
0000 0001
试题23
0000 0001
试题24
1000 0001
试题25
-111 1101
试题26
-111 1111
试题27
+1111

原码

原码是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。

重点

①0的表示方法有两种
②原码有优点也有缺点,优点是简单直观,缺点是不能直接参加运算
③原码的编码方式
④原码的定义

难点——————原码的编码方式

原码是有符号数的最简单的编码方式,便于输入输出,但作为代码加减运算时较为复杂。一个字长为n的机器数能表示不同的数字的个数是固定的2n个,n=8时2n=256;用来表示有符号数,数的范围就是 -2^(n-1)-1 ~ 2^(n-1)-1,n=8时,这个范围就是 -127 ~ +127。但是在不需要考虑数的正负时,就不需要用一位来表示符号位,n位机器数全部用来表示是数值,这时表示数的范围就是02^n-1,n=8时这个范围就是0255.没有符号位的数,称为无符号数。

难点——————原码的定义

①小数原码的定义
[X] =
X( 0≤X <1 )
1- X (-1 < X ≤ 0)
例如: X=+0.1011 , [X]原= 0.1011
X=-0.1011 [X]原= 1.1011
②整数原码的定义
[X]原 =
X (0≤X <2(n-1))
2(n-1)-X (- 2(n-1) < X ≤ 0)
x为正整数时,[X]原=x;
x为负整数时,[X]原=2的n次方-x;
x为负小数时,[X]原=1-x;

补码(以下内容来自简书上某个博主)

知道了计算机最基本的运算规则:有模运算。那么应该带入正号来求出负数。
首先,还是规定首位为0就是正数。例如正数A。
那么负数可以看成:-A(0<=A<M,M为模)
已知:A=B+K*M ,可得 :-A = -A + M ,
同时:已知0<=A<M , 可得 :(-A+M) > 0。
这相当于用一个正数 (-A+M) 表示出一个负数 -A 。
同理可得,A = A+M。

重点难点——————补码的定义:

对于任意一个数 X ,都有X = X + M (X mod M)。
推广到计算机(假设字长为n),可以得到定义:

(注意:负数部分=号,是强制规定,例如8位字长机器码对应10000000,我们强制认定为-128)

重点难点——————补码的性质:

①补码的符号位

首位0一定是正数,首位1一定是负数
②**补码中的补码的范围
③假设机器字长为n。
定点小数:
-1 <= x < 1- 2^(-(n-1)) ==>1.0 ~ 0.111....1(n-1个1)
定点整数:
-2^(n-1) <= x <= 2^(n-1)-1 ==>1000...0 ~ 0999..9

疑点——————补码、真值、原码间的相互转换

反码

反码是数值存储的一种,多应用于系统环境设置

移码

移码(又叫增码或偏置码)通常用于表示浮点数的阶码,其表示形式与补码相似,只是其符号位用“1”表示正数,用“0”表示负数,数值部分与补码相同。

重点难点——————定义

移码(又叫增码或偏置码)通常用于表示浮点数的阶码,其表示形式与补码相似,只是其符号位用“1”表示正数,用“0”表示负数,数值部分与补码相同。
①移码的定义:设由1位符号位和n位数值位组成的阶码,则 [X]移=2n-1 + X(-2n-1≤X<2n-1)
例如: n=5时
当X=+3,则[X]移=10011
当X=-3,则[X]移=01101 [2]
②移码与补码的关系: [X]移与[X]补的关系是符号位互为相反数(仅符号位不同),
例如: X=+01011[X]补=01011 [X]移=11011
X=-11011 [X]补=10101 [X]移=00101
③移码运算应注意的问题:
◎对移码运算的结果需要加以修正,修正量为2En ,即对结果的符号位取反后才是移码形式的正确结果。
◎移码表示中,0有唯一的编码——1000…00,当出现000…00时(表示-2En),属于浮点数下溢。

posted @ 2020-09-10 20:27  orange_toffee  阅读(289)  评论(0编辑  收藏  举报