当前位置:文档之家› 第3章信息编码与数据表示PPT课件

第3章信息编码与数据表示PPT课件


方法:用软件设定一个比例因子,把数据适当缩小或放大, 使之变成预先约定好的纯小数或纯整数;处理结束后,再用 相同的比例因子将结果还原。
例: (101.01)2+(010.1)2
=(0.10101)2×23+(0.01010)2×23
=(0.10101+0.01010)2×23
=(0.11111)2×23
BX=0000 0000 0000 0001B
CMP AX,BX ;比较指令
CMP (AX)-(BX)
;执行AX-BX,影响标志
JL L1 ;有符号数小于转移
JL (AX)<(BX)? Y
;执行JL指令时,操作数AX和BX
N
被当作有符号数据,AX=-1,BX=+1 所以执行结果是转移到L1标号处执行
MsM1M2▪▪▪▪▪▪Mn
阶码
尾数
◎ 浮点数实际上由定点数组成: 阶码是定点整数,尾数是定点小数
选择计算机的数值数据时应注意以下几个因素 ◎ 要表示的数的类型(整数、小数、实数)
◎ 要表示的数的范围
◎ 数值的精度
◎ 数值存储、处理所要付出的硬件代价
定点数与浮点数的异同 ◎ 无论采用定点数还是浮点数,计算机所能表示的数值都是一
3.2 数据格式
1、机器数 计算机中参与运算的数据有两种
◎无符号数据( Unsigned ):所有的二进制数据位数均用 来表示数值本身,没有正负之分 ◎带符号数据( Signed):包括符号位和数值位。其二进 制数据位,除了表明其数值的大小,还需保留正负号的位置 机器数 由于计算机中用二进制来表示所有的信息,因此带符号的数 据“+”、“-”号也必须转换为“0”、“1'代码。把符号代码 化并保存于计算机中的数据,称为机器数
数值位
小数点隐 含位置
定点表示法 (定点整数)
XS 符号位
X1 X2 X3 ▪▪▪▪▪▪ Xn .
数值位
小数点隐 含位置
◎定点整数所能表示的最精确的数是±1B, δ=1。
◎n+1位定点整数所能表示的绝对值最大的数是11…11B
(补码除外),即2n-1。
n位
定点表示法
◎讨论
在定点计算机中,如何处理实数(既有整数又有小数)?
系列离散的点。至于存在于两个点之间的数,计算机通常采 用合适的舍入操作。
◎ 无论采用定点数还是浮点数,计算机硬件的字长是有限的。 当数值超出了机器数所能表示的界限时,计算机产生“溢 出”
◎ 浮点数和定点数的不同之处在于:定点数表示的点在数轴上 是均匀的,距离是等长的1或2-n,浮点数分布不均匀,距离 不相等
3.3 定点机器数表示方法—原码、补码、反码
1、原码表示法 原码数学定义
◎对于n位定点整数X,其真值的二进制表示为 X=±X1X2 ···Xn 原码机器数位数(n+1)位
专门的部件表示小数点);有两种隐含方式: ◎定点数:小数点的位置是固定不变的 ◎浮点数:小数点的位置是浮动的 ◎定点机器数分为定点小数、定点整数两种。 ◎浮点机器数中小数点的位置由阶码规定,因此是浮动的。
定点表示法
定点机器数的小数点的位置是固定不变的,可以分为两种
◎ 定点小数:用于表示纯小数
小数点隐含固定在最高数据位的左边,整数位 则用于表示符号位
顺序执行 转至L1
指令执行流程
• 程序B(比较两数大小,产生分支)
AX=1111 1111 1111 1111B
BX=0000 0000 0000 0001B
CMP AX,BX ;比较指令 ;执行AX-BX,影响标志
CMP (AX)-(BX)
JB L1 ;无符号数小于转移
JB
;执行JB指令时,操作数AX和BX
◎δ表示了绝对值最小的非零值,也就是数轴上最靠近示的绝对值最大的数是0.11…11B (补码除外),即1-2-n。
定点表示法
◎定点整数:用于表示纯整数
小数点位置隐含固定在最低位之后,最高位为
符号位
◎定点整数格式
XS
X1 X2 X3 ▪▪▪▪▪▪ Xn .
符号位
无符号数据还是带符号数据? 以Intel 80X86系列CPU为例:
假设 AX=1111 1111 1111 1111B BX=0000 0000 0000 0001B
执行下面两段程序时,计算机硬件将把AX和BX中的数据看 成是不同的数据。
• 程序A(比较两数大小,产生分支)
AX=1111 1111 1111 1111B
被当作无符号数据,AX=+65535,
BX=+1
(AX)<(BX)? Y N
顺序执行 转至L1
所以执行结果是不转移,顺序执行
指令执行流程
机器数与真值 ◎ 机器数:把“+”、“-”符号代码化,并保存在计算机中的 数据 ◎ 真值:是指机器数所真正表示的数值,用数值并冠以 “+”、“-”符号的方法来表示 ◎ 机器数的编码方法:原码、反码、补码
=(111.11)2
除以23的结果
浮点表示法
◎ 浮点机器数的特点:将上述“比例因子”放在数据中,称之 为“阶码”,数据的小数点位置由阶码规定,因此是浮动 的。
◎ 浮点数的表示
浮点数由3部分组成: 阶码E
表示为 N=RE×M
尾数M
阶码的底R(隐含,一般为2)
◎ 浮点数的格式
EsE1E2▪▪▪▪▪▪Em
◎ 定点小数格式
XS .
X1 X2 X3 ▪▪▪▪▪▪ Xn
符号位 小数点隐 含位置
数值位
定点表示法 (定点小数)
XS .
X1 X2 X3 ▪▪▪▪▪▪ Xn
符号位
数值位
小数点隐
含位置 n位
◎n+1位定点小数所能表示的最精确的数是±0.00…01B, 其绝对值称为定点小数的分辨率或表示精度δ, δ=2-n。
机器数的特点:表示的数值范围受计算机字长的限制 符号位用数值表示(0/1) 小数点用规定的隐含方式表达
在计算机中,当机器字长相同时,无符号数和有符号数的表 示范围是不相同的 如:某计算机字长为16位 无符号数的表示范围:0~65535 带符号数的表示范围:-32768~+32767
讨论 计算机硬件如何区分存储在存储器或寄存器中的数据,是
程序处理的数据可能是正数或负数,但某些情况下,只可能 是正数,如内存的地址,负的地址是无意义的
在一些高级语言中,可以通过数据类型来反映数据的区别, 如C语言中,用整型变量int定义符号整数,用unsigned int定义无符号整数
2、小数点的表示方法 在机器数中,小数点及其位置是隐含规定的(计算机中没有
相关主题