计算机信息编码与数值运算.ppt

上传人:小飞机 文档编号:6606205 上传时间:2023-11-17 格式:PPT 页数:33 大小:335.64KB
返回 下载 相关 举报
计算机信息编码与数值运算.ppt_第1页
第1页 / 共33页
计算机信息编码与数值运算.ppt_第2页
第2页 / 共33页
计算机信息编码与数值运算.ppt_第3页
第3页 / 共33页
计算机信息编码与数值运算.ppt_第4页
第4页 / 共33页
计算机信息编码与数值运算.ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《计算机信息编码与数值运算.ppt》由会员分享,可在线阅读,更多相关《计算机信息编码与数值运算.ppt(33页珍藏版)》请在三一办公上搜索。

1、1.3 计算机中信息的编码,计算机进行数据处理和运算,就必须首先实现数字、小数点以及正负号的机器表达与识别;但是,计算机除了数据处理和运算外,还要进行各种文字特别是中文的处理与编辑。因此,所有由计算机处理的信息必须用数字进行编码。,1.3.1 信息的数字化表示形式,1、用一串电脉冲信号表示数字代码(串行)2、用一组电平信号表示数字代码(并行)3、用一组数字代码表示各种文字与符号4、用若干像素点的组合表示图像5、用数字代码表示命令与状态6、用数字代码信号表示声音,1.3.2 十进制数的编码,BCD码 8421码 2421码 余3码 8421码为有权代码,0 0000 0000 0011数值为N=

2、8d3+4d2+2d1+1d01 0001 0001 0100十进制数63.29的BCD码为:2 0010 0010 01010110 0011.0010 10013 0011 0011 0110 4 0100 0100 0111 2421码为有权代码,5 0101 1011 1000数值为N=2d3+4d2+2d1+1d0 6 0110 1100 1001十进制数63.29的BCD码为:7 0111 1101 10101100 0011.0010 11118 1000 1110 1011余3码为无权代码,对应8421码加3而得。9 1001 1111 1100除上述三种BCD码之外,还有54

3、21码、格雷码、循环码等,1.3.3 西文信息在机内的表示,ASCII码(American Standard Code For Information Interchange,美国国家信息交换标准字符码),每字符用一个字节表示,共有128个字符(最高位为0)。其中 95个字符供显示、打印使用,余下33个 为控制字符。扩展ASCII码可表示256个编码,1.3.4 中文信息在机内的表示,1、汉字的国家标准编码国标码:我国在1981年颁布了通讯用汉字字符集(基本集)及其交换码标准GB2312-80方案,为7445个常用汉字与字符进行了编码,简称国标码。国标码中每个汉字与字符各用两字节表示。7445

4、个常用汉字与字符包括:一级汉字3755个,按拼音排序二级汉字3008个,按部首排序 各种字母、数字、符号682个,区位码:将国标码中字符按其排列位置划分成94区94位,以字符所在区位编码。0.94 19区 1015区空 1655区 5687区 8894区空 区位码是国标码的变形:国标码=区位码+2020H 国标码、区位码均用4位数字进行一个汉字编码。,字母、数字、各种符号等 682个,一级汉字 3755个,二级汉字 3008个,2、汉字在计算机内的表示机内码是指机器内部处理和存储汉字的一种代码常用的机内码在国标码基础上每个字节最高位置1机内码=国标码+8080H=区位码+A0A0H“京”字国标

5、码为3E29H,其机内码为BEA9H。3、汉字的输入:汉字输入编码已有上百种 常用国标码,区位码,拼音码,五笔字型等4、汉字的输出与汉字字库汉字字型描述:图形点阵。西文8 X8,中文16X16汉字字库实现有两种:软字库、硬字库(汉卡)汉字的显示输出过程:输入码-机内码-字型码,1.3.5 计算机中图形的表示,计算机中图形的两种数字化的表示方法:几何图形或矢量图形根据画图或场景中包含的内容,分别用几何要素(点、线、面、体)和物体表面的材质以及环境的光照条件、用户的观察位置等进行描述。点阵图象或位图图象把原始图划分为由 MN 个像素点所组成的大矩阵。,1.4 计算机中的数值运算1.4.1二进制数的

6、运算规律,原码扩展 符号不变,在符号位后填0:A原=0101-00000101B原=1101-10000101补码扩展 符号不变,正整数在符号位后 填0,负整数在符号位后填1,例如:C补=0101-00000101D补=1101-11111101,1、编码位数的扩展(以4或8位带符号整数说明),1.4 计算机中的数值运算1.4.1二进制数的运算规律,算术移位 符号位不动,移出数码丢弃。左移等于乘2,右移等于除2。原码和正数补码移位时在空位补0;负数补码左移时末尾补0,右移时空位补1。例如:A原=00001101左移2位得 00110100B原=10001101右移2位得 1000001101C

7、补=11101101左移2位得 10110100D补=11001100右移2位得 11110011,2、编码移位(以4或8位带符号整数说明),1.4 计算机中的数值运算1.4.1二进制数的运算规律,逻辑移位 不论什么编码,逻辑左移或逻辑右移都是连同符号位一起移动,移出者丢弃,空位补0;逻辑循环移位也是连同符号位一起移动,但要把移出者补入空位。例如:10001101逻辑左移2位得0011010010001101逻辑右移2位得0010001110001101循环左移1位得0001101110001101循环右移1位得11000110,2、编码移位(以4或8位带符号整数说明),1.4.2定点数的运算

8、1、定点数的加减法运算,计算机中,常用补码进行加减运算 补码可将减法变加法进行运算 补码运算特点:符号位数值位一同运算 定点补码运算在加法运算时的基本规则:X补+Y补=X+Y补(两个补码的和等于和的补码)定点补码运算在减法运算时的基本规则:X补-Y补=X补+-Y补=X-Y补,例如:已知机器字长n=8,X=44,Y=53,求X+Y=?,解:X原=00101100,Y原=00110101 X补=00101100,Y补=00110101,X补=0 0 1 0 1 1 0 0+Y补=0 0 1 1 0 1 0 1 X+Y补=,1,0,0,0,0,1,1,0,X+Y原=01100001X+Y=+97,例

9、:已知机器字长n=8,X=-44,Y=-53,求X+Y=?,解:44补=00101100,53补=00110101X补=-44补=11010011+1=11010100,Y补=-53补=11001010+1=11001011,X补=1 1 0 1 0 1 0 0+Y补=1 1 0 0 1 0 1 1 X+Y补=1 1 0 0 1 1 1 1 1 超出8位,舍弃 X+Y原=11100001,X+Y=(-97),例:已知机器字长n=8,X=44,Y=53,求X-Y=?,解:X补=00101100,Y补=00110101,连同符号求反加1得-Y补=11001011 根据X补-Y补=X补+-Y补=X-

10、Y补有:X补=0 0 1 0 1 1 0 0+-Y补=1 1 0 0 1 0 1 1 X-Y补=1 1 1 1 0 1 1 1 X-Y补=11110111,X-Y=-0001001=(-9),例:已知机器字长n=8,X=-44,Y=-53,求X-Y=?,解:X补=11010100,Y补=11001011,连同符号求反加1得-Y补=00110101 X补=1 1 0 1 0 1 0 0+-Y补=0 0 1 1 0 1 0 1 1 0 0 0 0 1 0 0 1 超出8位(模值),舍弃X-Y补=00001001,X-Y=+0001001=(+9),解:X补=01111000,Y补=00001010

11、,X补=0 1 1 1 1 0 0 0+Y补=0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 0 X+Y补=10000010,X+Y=11111110 X+Y的真值=-1111110=(-126)10 运算结果超出机器数值范围发生溢出错误。8位计算机数值表达范围:(-128+127),例:已知机器字长n=8,X=120,Y=10,求X+Y=?,溢出判断规则与判断方法,两个相同符号数相加,其运算结果符号与被加数相同,若相反则产生溢出;两个相异符号数相减,其运算结果符号与被减数相同,否则产生溢出。相同符号数相减,相异符号数相加不会产生溢出。溢出判断方法:1.双符号法,2.进位判断法,(

12、1)双符号位溢出判断法 Sf1+Sf2,双符号含义:00表示运算结果为正数;01表示运算结果正向溢出;10表示运算结果负向溢出;11表示运算结果为负数。亦即:OVR=Sf1 Sf2=1有溢出 OVR=Sf1 Sf2=0 无溢出 第一位符号位为运算结果的真正符号位。,例:X=0.1001,Y=0.0101,求X+Y,解:X补=00.1001+Y补=00.0101 X+Y补=00.1110两个符号位相同,运算结果无溢出X+Y=+0.1110,例:X=-0.1001,Y=-0.0101,求 X+Y=?,解:X补=11.0110+1=11.0111+Y补=11.1010+1=11.1011 X+Y补=

13、111.0010两个符号位相同,运算结果无溢出X+Y=-0.1110,例:X=0.1011,Y=0.0111,求 X+Y=?,解:X补=00.1011+Y补=00.0111 X+Y补=01.0010两个符号位为01,运算结果正向溢出,例:X=-0.1011,Y=0.0111,求 X-Y=?,解:X补=11.0100+1=11.0101 Y补=00.0111-Y补=11.1001 X补=11.0101+-Y补=11.1001 X+Y补=110.1110两个符号位10不同,运算结果负向溢出,(2)进位溢出判断法 S+C,两单符号位的补码进行加减运算时,若最高数值位向符号位的进位值C与符号位产生的进

14、位输出值S相同时则无溢出,否则溢出。例:X补=1.101 X补=1.110+Y补=1.001+Y补=0.100 X+Y补=10.110 X+Y补=10.010 C=0,S=1,有溢出 C=1,S=1,无溢出 X+Y=+0.010,2、定点数的乘除法运算,计算机中的乘法运算采用移位相加方法实现,可通过软件编程或依靠硬件电路完成;计算机中的除法运算采用移位相减方法实现,可通过软件编程或依靠硬件电路完成;,1.4.3 浮点数的运算 1、浮点数的加减法运算,规格化浮点数的加减法运算需经过五步完成:对阶操作:低阶向高阶补齐,使阶码相等;尾数运算:阶码对齐后直接对尾数运算;结果规格化:对运算结果进行规格化

15、处理;(使补码尾数的最高位和尾数符号相反)舍入操作:丢失位进行0舍1入或恒置1处理;判断溢出:判断阶码是否溢出,下溢则将运 算结果置0,上溢则中断。,具体说明如下:,对阶操作(低阶向高阶对齐)尾数为原码时,尾数右移,符号位不动,最高位补0尾数为补码时,尾数右移,符号也移位,最高位补符号位例如:求=?低阶对高阶舍掉的是高阶对低阶舍掉的是,规格化:原码尾数高位为1,补码与符号相反 舍入操作:0舍1入 或 恒置1例1:求=?0舍1入后为恒置1例2:求=?0舍1入后为恒置1 判断结果的正确性(即结果的阶码是否溢出),例:假设 其中指数和小数均为二进制真值,求X+Y。其阶码4位(含阶符),补码表示;尾数

16、6位,补码表示,尾数符号在最高位,尾数数值5位。,解:尾符 阶码 尾数5位 X浮=0 0010 11010 Y浮=1 0011 00010对阶 X浮=0 0011 01101尾数求和 00.01101+11.00010=11.01111X浮+Y浮=1 0011 01111规格化、舍入操作、阶码溢出判断,最后:X+Y真=,例:假设 其中指数和小数均为二进制真值,求X-Y。其阶码4位(含阶符),补码表示;尾数6位,补码表示,尾数符号在最高位,尾数数值5位,解:尾符 阶码 尾数 X浮=0 0010 11010 Y浮=1 0011 00010对阶 X浮=0 0011 01101尾数求差:X尾-Y尾补=

17、X尾补+-Y尾补=00.01101+00.11110=01.01011 规格化处理、舍入操作均不需要,阶码溢出检查:尾数符号位为01,尾数发生上溢出,做规格化处理 尾数连同符号右移一位00.101011,阶码加1至0100舍入操作恒置1后:X浮-Y浮=0 0100 10101 X-Y真=,浮点数的乘除运算比较烦琐复杂,一般要求参加运算的两数均为规格化的浮点数。乘法运算时两数阶码相加,尾数按定点数乘法进行,结果再规格化;除法运算与乘法相反。目前微机中均配有浮点运算器,也提供有相应运算指令,不需使用者自行编程计算。,1.4.3 浮点数的运算 2、浮点数的乘除法运算,1.4.4 十进制编码的加减运算,以“8421”BCD码加法运算为例说明:BCD码运算应将每4位二进制数分为 一组,组与组之间直接运算,逢十进一。但计算机中无法区分BCD码,一概作为二进制数处理,因此,计算机做此运算后须进行调整。调整方法:和9(1001)2,加6(0110)2修正,例:5+3=8 7+8=15 8+9=17,0101 0111 1000+0011+1000+1001 1000 1111 10001+0110+0110 10101 10111 向高位进位计算机中具有专门指令进行十进制运算调整,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号