汇编语言课程课件-第一章

上传人:我*** 文档编号:146138628 上传时间:2020-09-27 格式:PPT 页数:78 大小:374KB
返回 下载 相关 举报
汇编语言课程课件-第一章_第1页
第1页 / 共78页
汇编语言课程课件-第一章_第2页
第2页 / 共78页
汇编语言课程课件-第一章_第3页
第3页 / 共78页
汇编语言课程课件-第一章_第4页
第4页 / 共78页
汇编语言课程课件-第一章_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《汇编语言课程课件-第一章》由会员分享,可在线阅读,更多相关《汇编语言课程课件-第一章(78页珍藏版)》请在金锄头文库上搜索。

1、第一章 计算机中数据的表示,教学重点,各种数制的表示 相互转换 有符号数的表示方法 原码、反码、补码 二进制运算 运算结果的正确性 不同的编码体制 BCD、ASCII、UNICODE,1.1 数制,十进制 二进制 十六进制 八进制,计算机编程常用的数制有:,十进制,日常生活中常用的计数法 基数:10 十个数字:0,1,2,3,4,5,6,7,8,9 后缀:D或d,十进制数的多项式表示,任意一个十进制数N10可以表示为下面的公式:,说明:公式中i表示数的某一位;Ki表示第i位的数字,它可以是09中的任一数字,m和n为正整数,10i,十进制数多项式表示示例,374.53 =3102+7101+41

2、00+510-1+310-2,374.53的多项式表示形式为:,二进制,计算机中采用的计数法 基数:2 两个数字:0, 1 后缀:B或b,二进制数的多项式表示,任意一个二进制数N2可以表示为下面的公式:,说明:公式中i表示数的某一位;Ki表示第i位的数字,它可以是0或1,m和n为正整数,2i,十六进制,汇编程序中采用的计数法,简化二进制数的书写 基数:16 十六个数字: 0, 1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 后缀H或h,注意: 一个十六进制数如果最高位数字为字母(A-F),则字母前面必须加一个0,以便与变量名相区别,十六进制数的多项式表示,任意一个十六进制数N16可

3、以表示为下面的公式:,说明:公式中i表示数的某一位;Ki表示第i位的数字,它可以是01,AF中的任一数字,m和n为正整数,16i,八进制,也可用于在程序中简化二进制数的书写 基数:8 八个数字: 0, 1,2,3,4,5,6,7 后缀O或o,八进制数的多项式表示,任意一个八进制数N8可以表示为下面的公式:,说明:公式中i表示数的某一位;Ki表示第i位的数字,它可以是07中的任一数字,m和n为正整数,8i,数制间的转换,非十进制数转换成十进制数 十进制数转换成非十进制数,非十进制数转换成十进制数,先将非十进制数按定义展开为多项式 再按十进制进行乘法与加法运算 计算结果即为该数对应的十进制数。,二

4、进制数转换为十进制数,例1-1:将二进制数1101.101转换为 十进制数 1101.101B =123+122+021+120+12-1+02-2+12-3 =8+4+1+0.5+0.125 =13.625,十六进制数转换为十进制数,例1-2:将十六进制数2AE.4转换为 十进制数,2AE.4=2162+10161+14160+416-1 = 512+160+14+0.25 = 686.25,十进制数转换成非十进制数,把十进制数写成整数和小数两部分 然后对整数和小数部分分别进行转换 最后把转换后的整数部分和小数部分相加即可。,整数的转换,采用短除法 把该整数不断除以二进制,八进制或十六进制的

5、基数2,8或16,并记下余数,直到商为0为止。 由最后一个余数起逆向排列各个余数即为对应的二进制、八进制和十六进制整数。,例1-3,将十进制数126转换 为二进制和十六进制,126,63,31,2,2,0,2,15,7,3,1,0,2,1,2,2,2,1,1,1,1,126D=1111110B,1,126,7,0,16,E,16,7,126D=7Eh,小数部分转换,采用连乘法 把该小数不断乘以二进制,八进制或十六进制的基数2,8或16,并记下整数部分,直到小数部分为0为止。 由第一个整数起排列各个整数即为对应的二进制、八进制和十六进制小数。,例1-4,将十进制数小数0.8125转换为二进制和十

6、六进制,0.8125,2,1.6250,1,2,1.250,1,2,0.5,0,2,1.0,1,0.8125D=0.1101B,0.8125,16,13.0000,D,0.8125D=0.DH,0,0,例1-5:,将整数和小数部分分别转换为二进制和十六进制,然后相加。,将十进制数126.8125转化为二进制和十六进制,126.8125D=126D+0.8125D =1111110B+ 0.1101B = 1111110.1101B,126.8125D=126D+0.8125D =7Eh+0. DH =7E.DH,表1-1 不同进制间及其与 BDC码的对应关系,每四个二进制位对应一个十六进制位,

7、返回,二进制与十六进制之间的转换,二进制数十六进制数:整数部分自右向左每四位分为一组,直接用一个十六进制符号表示,最左边的数位不够四位的用0补足。小数部分自左向右每四位分为一组,直接用一个十六进制符号表示,最右边的数位不够四位的用0补足。 十六进制数二进制数:将每一个十六进制位直接用对应的四位二进制数表示。,表1-1,例1-6:,1011101001.110101B =001011101001.11010100B =2E9.D4H,二进制数和十六进制数相互转换,5C7A.3BH =0101110001111010.00111011B =101110001111010.00111011B,表1-

8、2 二进制数与八进制数的关系,每三个二进制位对应一个八进制位,返回,二进制与八进制之间的转换,二进制数八进制数:整数部分自右向左每三位分为一组,直接用一个八进制符号表示,最左边的数位不够三位的用0补足。小数部分自左向右每三位分为一组,直接用一个八进制符号表示,最右边的数位不够三位的用0补足。 八进制数二进制数:将每一个八进制位直接用对应的三位二进制数表示。,表1-2,例1-7:,1011101001.110101B =001011101001.110101B =1351.65O,二进制数和八进制数相互转换,123.75O =001010011.111101B =1010011.111101B,

9、1.2 有符号数的表示,数值 无符号数 所有二进制数位均为数值位。 n位二进制数表示的无符号整数范围是02n-1 有符号数 最高有效位(MBS)表示数的符号, 正数:0,负数:1,机器数与真值,机器数:数值在计算机内表示的二进制编码 真值:机器数对应的实际数值。,有符号数的编码方式,原码 反码 补码,原码,最高有效位表示符号: 正数的符号位用0表示 负数的符号位用1表示 其它数位直接表示数值的大小。,例1-8:,用n位原码表示有符号数1105,如果n=16 如果n=32,1105原=0000010001010001B=0451H,1105原 =0000000000000000000001000

10、1010001B =00000451H,符号位,符号位,例1-9:,用n位原码表示有符号数1105,如果n=16 如果n=32,1105原=1000010001010001B8451H,1105原 =10000000000000000000010001010001B =80000451H,符号位,符号位,问题,1105和1105能不能用8位二进制数原码表示呢?,答:十进制数1105的数值对应了11位二进制位,所以,很明显用8位二进制数原码不能表示1105和-1105。,原码的范围,n位二进制原码表示的有符号整数的范围是:-(2n-1-1)2n-1-1 8位二进制原码表示的范围:-127+127

11、 16位二进制原码表示的范围:-3276732767 32位二进制原码表示的范围:-21474836472147483647 原码表示数0有两种表示形式: +0原=00000000B或-0原=10000000B,反码,正数的反码与原码相同 负数的反码是它对应正数的各位(包括符号位)按位取反而形成的,即0变成1,1变成0。,例1-10:,用n位反码表示有符号数1105,正数的反码与原码相同,所以:,n=16:1105反1105原0451H n=32:1105反1105原00000451H,例1-10(续):,用n位反码表示有符号数-1105,负数的反码要将它对应的正数原码各位按位取反:,n=16

12、: 1105的原码是:0000010001010001B 按位求反后:1111101110101110B 所以:-1105反FBAEH,当n32时: 1105的原码是:00000000000000000000010001010001B 按位求反后得: 11111111111111111111101110101110B 所以:-1105反FFFFFBAEH,补码的表示范围,原码所能表示的数值范围与补码相同,在反码中也有+0和-0两种表示方法。 n8时,不能以反码形式表示有符号数1105和1105。为什么?,补码,正数的补码与原码相同 负数的补码表示为:2n-|X| X表示某一个负数 n表示二进制

13、位数,例1-11:,用n位补码表示有符号数1105,正数的反码与原码相同,所以:,n=16:1105补1105原0451H n=32:1105补1105原00000451H,例1-11(续),用n位反码表示有符号数-1105,负数的补码表示为:2n-|X|,n=16: -1105反216-1105 10000H-0451H FBAFH,n=32: -1105反232-1105 100000000H-00000451H FFFFFBAFH,求负数补码的一种简单方法,求负数补码还有一种简单方法: 先写出负数绝对值的原码 将其按位取反 最后最低位(即D0位)加1。,例1-12:,求-1105的补码表

14、示,当n=16时: |-1105| = 1105 = 0000 0100 0101 0001B 按位求反后得:1111 1011 1010 1110B 最低位加1后:1111 1011 1010 1111B 所以: -105补=-105反+1=FBAEH+1=FBAFH,例1-12(续):,求-1105的补码表示,当n=32时: |-1105|=1105 = 00000000000000000000010001010001B 按位求反后得: 11111111111111111111101110101110B 最低位加1后得: 11111111111111111111101110101111B

15、所以: -105补-105反1 FFFFFBAEH+1FFFFFBAFH,求补码的真值,对正数的补码(即原码)可直接 求真值。 对负数的补码进行求补运算,可 以得到它的真值。,X补补=|X|原,例1-13:,求补码81A4H的真值,补码81A4H的最高位(符号位)为1 补码81A4H是负数的补码。 对81A4求补: 81A4H1000000110100100b 按位求反得:0111111001011011b 加1后得:0111111001011100b=32348 所以,补码81A4H对应的真值是-32348。,例1-13(续):,求补码71A4H的真值,补码71A4H的最高位(符号位)为0

16、补码71A4H是正数的补码(即原码) 所以,补码71A4H对应的真值是29092,例1-14,求8位补码表示的有符号数范围,8位二进制补码的范围:00000000 1111 1111b 分三种情况: (1) 全0,即0000 0000,表示有符号数0; (2) 0000000101111111,表示正数1127, 即127-1; (3) 1000000011111111,表示负数-128-1, 即-27-1。 8位补码表示的有符号数范围:-128+127。,补码的表示范围,n位二进制补码表示有符号整数的范围是:-2n-12n-1-1 8位:-128+127 16位:-32768+32767 32位:-2147483648+2147483647 0的补码只有唯一的形式,符号位和数值位均为0。 在计算机中,有符号数默认采用补码形式,说明:,从上面几例可以看出:用二进制表示数值时,书写非常麻烦,也容易出错。在本书的

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号