《电子科技大学计算机组成原理计算机组成原理》由会员分享,可在线阅读,更多相关《电子科技大学计算机组成原理计算机组成原理(32页珍藏版)》请在金锄头文库上搜索。
1、第2章 计算机中的信息表示,主要介绍: 数字型数据的计数制、符号数的表示、小数点的表示、字符的表示、指令信息的表示;,2.1 数值型数据的表示方法,2.1.1 进位计数制 2.1.2 带符号数的表示 2.1.3.数的定点与浮点表示,2.1.1 进位计数制 数制的基与权 在任一数制中,其每一数位上允许使用的记数符号的个数被称为该数制的基数。 每一位都有一个表示该位在数中的位置的值,这个值就称为权值。,(1)2进制,0,1 (2)8进制:0,1,2,7 (3)16进制:0,1,2,9,A,B,C,D,E,F (4)2-10进制:4位2进制数表示一位10进制数,1. 常用的进位制,2. 进制之间的转
2、换,(1)整数 10 2 (2)小数 10 2 (3)整数 2 10 (4)小数 2 10,2.1.2带符号数的表示,1. 数的符号表示法 约定: “0”表示正号“+”; “1”表示负号“-”。 表示形式为:,2. 原码、反码和补码,(1)原码 编码规则如下: 最高位为符号位,其余各数值位取原值不变。 表示形式如下:,0的两种表示形式: +0原=0 0000000; -0原 =1 0000000 8位的原码,表示范围为:+127-127。 +127原 =0 1111111 127原 =1 1111111 原码简单易懂,且与真值转换方便。但用原码做加、减法运算时,运算电路复杂。,(2) 反码 编
3、码规则如下: 对于正数(设字长为8位) X反=X原 (X0) 设: X=+1101001 (+105) 则 X反= 0 1101001 符号位 数值位 对于负数 编码如下: 符号位仍为“1”,各数值位是“按位取反”。,符号位,数值部分,“0”的两种表示形式: +0反=0 0000000 -0反 =1 1111111 8位反码表示的数值范围为:+127-127。 +127反=0 1111111 -127反 =1 0000000,(3)补码 补码的概念 为校准时间,有两种拨针法: (a) 倒拨3小时 6-3=3 (b) 顺拨9小时 6+9=3 即: 6+9= 12(自动丢失) +3=0+3=3 自
4、动丢失的数(12),称之为“模数”。 因此: 6-3=6+9 (mod 12) 或 -3= +9 (mod 12),X补=模数+X 模数也就是计数装置的容量(该装置能够表示的最大数), 在该装置中模数与零等值。 计算机中的补码是以“2n”为模数,即: X补=2n + X (字长=n位) 例如:X= -1010111 (字长=8位) 则 X补=100000000-1010111 =1 0101001, 补码的编码规则 编码规则如下: (a) 对于正数(字长=8位) X补=28 +X =0+X=X原 (X0) (b) 对于负数(字长=8位) 符号位仍为“1”,各数值位“按位取反再加1”,即: X补
5、=28+X=(11111111+X)+1 (X0) =X反+1,“0”的表示形式: +0补=-0补= 0 0000000 8位补码,表示范围为:+127-128 即: +127补=0 1111111; -128补 =1 0000000 【注意】:8位补码可以比原码、反码多表示一个负数,即-128,3. 原码、反码和补码之间的转换,(1) 已知X原,求X补 【例1-4】已知X原= 1 0 011010,求X补 解: X原= 1 0 0 1 1 0 1 0 1 1 1 0 0 1 0 1 +) 1 X补 = 1 1 1 0 0 1 1 0,(2) 已知X补,求X原 X补补=X原。 【例1-5】已知
6、X补= 1 1 1 01100,求X原 解: X补= 1 1 1 0 1 1 0 0 1 0 0 1 0 0 1 1 +) 1 X原 = 1 0 0 1 0 1 0 0,(3) 求补(变补):已知X补,求-X补 X补连同符号位一起逐位求反,末位加1,得到-X补。 【例1-6】已知X补= 0 1 0 10110,求-X补 解: X补 = 0 1 0 1 0 1 1 0 1 0 1 0 1 0 0 1 +) 1 -X补 = 1 0 1 0 1 0 1 0,2.1.3 数的定点表示与浮点表示,1 定点表示法 由程序设计者约定,该程序中所有数的小数点固定在同一位置不变。 带符号的定点小数:约定所有数的
7、小数点的位置固定在符号位之后。 设字长= n+1位,表示范围为: 1-2-n-(1-2-n),数值部分,符号位,重点关注:表示范围和分辨率,小数点, 带符号的定点整数:约定所有数的小数点的位置固定在最低数值位之后。 设字长=n+1位,表示范围为: 2n -1- (2n -1)。 限制了程序处理数据的范围。 需要事先将参加运算的数乘上一个“比例因子”。 优点:不需要增加计算机硬件。,数值部分,符号位,小数点, 无符号定点整数:约定所有数的小数点的位置固定在最低数值位之后。,若代码序列为XnXn-1X1X0,共n+1位,则有:,典型值 真值 代码序列,最大正数 2n+1-1 1111 最小非零正数
8、 1 000001,原码、补码和反码相同,表示范围为 : 0 (2n+1-1), 分辨率为: 1,无符号数:,定点整数:,定点小数:,0000000011111111,0255,-127127,-128127,-(1-2-7) (1-2-7),-1 (1-2-7),1,2-7,如果用8位二进制数来表示,则其表示范围如下:,2 浮点表示法 浮点表示法中,小数点的位置是浮动的。 表示如下:,可见: 一个机器浮点数由阶码E和尾数M及其符号位组成。 约定:尾数M用定点小数表示,给出有效数字的位数,M决定了浮点数的表示精度; 阶码E:用整数形式表示,指明小数点在数据中的位置,其决定了浮点数的表示范围。,
9、阶码,尾数,阶符,数符,R:阶码底,隐含约定。,E:阶码,为定点整数,补码或移码表示。 其位数决定数值范围;,阶符表示数的大小。,M:尾数,为定点小数,原码或补码表示。 其位数决定数的精度;,数符表示数的正负。,尾数规格化:1/2 M 1,最高有效位绝对值为 1,2. 浮点表示法,2. 表示范围与精度,阶符1位,阶码m位,补码表示,以2为底; 数符1位,尾数n位,补码表示,规格化。,最小浮点数:,最大浮点数:,最小浮点正数:,阶码为最大数:,尾数为绝对值最的负数:,-(2n-1),尾数为最大数:,阶码为最大数:,阶码为最小数:,尾数为最小正数:,2-1,例. 某十六进制浮点数(A3680000
10、)16,补码表示,字长32位,阶码8位(含1位阶符),尾数24位(含1位数符),求该浮点数10进制真值表达式。,表示范围:,-231 231 (1-2-9),例. 某规格化浮点数用补码表示,其中阶码6位,含1位阶符;尾数10位,含1位数符。,表示精度:,2-33,2.2 字符表示方法,2.2.1 ASCII码,ASCII (American Standard Code for Information Interchange)码。 如表2-4所示。,2.2.2汉字编码简介,1. 汉字的输入编码 包括:数字码、拼音码和字形码 数字码:常用的是国标区位码,用数字串代表一个汉字输入。区位码是将国家标准
11、局公布的6763个两级汉字分为94个区,每个区分94位,实际上把汉字表示成二维数组,每个汉字在数组中的下标就是区位码。区码和位码各两位十进制数字,因此输入一个汉字需按键四次。 数字编码输入的优点是无重码,且输入码与内部编码的转换比较方便,。缺点是代码难以记忆。 拼音码:拼音码是以汉字拼音为基础的输入方法。使用简单方便,但汉字同音字太多,输入重码率很高,同音字选择影响了输入速度。,字形码:字形编码是用汉字的形状来进行的编码(例:五笔字型)。把汉字的笔划部件用字母或数字进行编码,按笔划的顺序依次输入,就能表示一个汉字。 为了加快输入速度,在上述方法基础上,发展了词组输入联想输入等多种快速输入方法。
12、但是都利用了键盘进行“手动”输入。理想的输入方式是利用语音或图象识别技术“自动”将拼音或文本输入到计算机内,使计算机能认识汉字,听懂汉语,并将其自动转换为机内代码表示。目前这种理想已经成为现实。,2.汉字内码 汉字内码是用于汉字信息的存储、交换、检索等操作的机内代码,一般采用两个字节表示。英文字符的机内代码是七位的ASCII码,当用一个字节表示时,最高位为“0”。为了与英文字符能相互区别,汉字机内代码中两个字节的最高位均规定为“1”。 注意:有些系统中字节的最高位用于奇偶校验位,这种情况下用三个字节表示汉字内码。,3. 汉字字模码,字模码是用点阵表示的汉字字形代码,它是汉字的输出形式。,例如:,字模码,汉字的字模码为: 16位 16位=32字节,注意到: 字模点阵只能用来构成汉字库,而不能用于机内存储。字库中存储了每个汉字的点阵代码,用于汉字的显示输出或打印输出。当显示输出或打印输出时才检索字库,输出字模点阵,得到字形。 汉字的输入编码、汉字内码、字模码是计算机中用于输入、内部处理、输出三种不同用途的编码,不要混为一谈。,