计算机科学导论第二章数制课件_第1页
计算机科学导论第二章数制课件_第2页
计算机科学导论第二章数制课件_第3页
计算机科学导论第二章数制课件_第4页
计算机科学导论第二章数制课件_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2022/10/15第2章 数制 Number Systems 2022/10/15 理解数制的概念. 分清位置化数制和非位置化数制. 描述十进制. 描述二进制. 将十进制转换为二进制、八进制或十六进制. 将二进制和八进制相互转换. 将二进制和十六进制相互转换. 查找在各种系统中代表特定数值所需的数码.目标 通过本章的学习,同学们应该能够:2022/10/152-1 引言 INTRODUCTION数制定义了如何用独特的符号来表示一个数字. 在不同的系统中,数字有不同的表示方法. 例如,这两个数字 (2A)16 和 (52)8 都是指同样的数量 (42)10, 但是它们的表示截然不同. 一些数制

2、系统已经在过去广为使用,并可以分为两类:位置化数制和非位置化数制.我们的主要目标是讨论位置化数制系统,但也给出非位置化数制系统的例子.2022/10/152-2 位置化数制系统 POSITIONAL NUMBER SYSTEMS在位置化数制系统中,符号所占据的位置决定了其表示的值。它的值是:2022/10/15位置化数制系统 其中,S是一套符号集, Si是数码(数字符号) ,b是底或基数(数码的个数). bi:权(数值中每一固定位置对应的单位)计数规则:逢基数进一 例: (123.45)10 = 1102+2101+3100+410-1+510-2 (101.01)2 = 122+021+12

3、0+02-1+12-2 2022/10/15下标法:用小括号将所表示的数括起来,然后在右括号右下角写上数制的基R。字母法:在所表示的数的末尾写上相应数制字母。2022/10/15进 制 符 号 数 码二 进 制 B (Binary) 01八 进 制 O (Octal) 07十 进 制 D (Decimal) 09十六进制H (Hexadecimal)09,AF2022/10/15S = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9十进制系统The decimal system (以10为底) 十进制来源于拉丁词根decem (ten). 在该系统中,底b = 10 ,并且我们用10

4、个符号来表示一个数该系统中的符号,常被称为十进制数码,或仅称为数码. 2022/10/15整数Figure 2.1 在十进制系统中使用位置量表示整数 2022/10/15Example 2.1在十进制系统中使用位置量表示整数+224.注意,在位置1的数码2值为20,但是在位置2的同一个数码其值为200。通常我们省略掉的加号,实际上是隐含的.2022/10/15Example 2.2在十进制系统中使用位置量表示整数7508. 可以用k表示的十进制整数的最大值?答案是Nmax=10k-1。如果k=5,那么这个最大值是Nmax=105-1=99999.()Values2022/10/15实数Exam

5、ple 2.3以下显示了实数+24.13的位置量.2022/10/15二进制binary 来源于拉丁词根 bini (二). 在该系统中,底b = 2, 并且用两个符号来表示一个数 二进制系统The binary system (以2为底) S = 0, 1该系统中的符号常被称为二进制数码或位 2022/10/15整数 Figure 2.2 在二进制系统中使用位置量表示整数 2022/10/15Example 2.4二进制数 (11001)2,下标2表示底是2.相等的十进制数是 N = 16 + 8 + 0 + 0 + 1 = 25.2022/10/15实数Example 2.5与十进制数5.

6、75等值的二进制数 (101.11)2.2022/10/15十六进制 hexadecimal 来源于希腊词根hex (six) 和拉丁词根 decem (ten). 在该系统中,底b = 16 ,并且用16个符号来表示一个数. 字符集是,十六进制系统The hexadecimal system (以16为底) S = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F 注意符号A, B, C, D, E, F 分别等于10, 11, 12, 13, 14, 15. 该系统中的符号常被称为十六进制数码.2022/10/15整数Figure 2.3 在十六

7、进制系统中使用位置量表示一个整数 2022/10/15Example 2.6与十进制数686等值的十六进制数 (2AE)16.相等的十进制数为 N = 512 + 160 + 14 = 686.2022/10/15八进制 octal 来源于拉丁词根 octo (八). 在该系统中,底 b = 8 ,并且用8个符号来表示一个数.字符集是,八进制系统The octal system (以8为底)S = 0, 1, 2, 3, 4, 5, 6, 7 2022/10/15整数Figure 2.4 在八进制系统中使用位置量表示一个整数 2022/10/15Example 2.7 八进制数 (1256)8

8、.相等的十进制数为N = 512 + 128 + 40 + 6 = 686.2022/10/15表2.1是本章讨论的四种位置化系统的小结.四种位置化系统总结 2022/10/15表2.2显示了数字0到15在不同的系统中是如何表示的. 2022/10/15如何将一种系统中的数字转换为另一个系统中等价的数字? 如何从其他进制转换到十进制. 如何从十进制转换到其他进制. 如何简便地进行二进制与八进制或十六进制之间的相互转换.转换 2022/10/15其他进制到十进制的转换 Figure 2.5 任意进制到十进制的转换 2022/10/15Example 2.8如何将二进制数(110.11)2 转换为

9、十进制数6.75. 2022/10/15Example 2.9如何将十六进制数 (1A.23)16 转换为十进制数.注意这个十进制表示并不精确,因为 3 162 = 0.01171875. 四舍五入成三位小数 (0.012). 2022/10/15Example 2.10如何将八进制数 (23.17)8 转换为十进制数.在十进制中 (23.17)8 19.234. 再一次, 我们把7 82 = 0.109375四舍五入.2022/10/15Figure 2.7 转换十进制的整数部分到其他进制 除基取余法十进制到其他进制的转换 2022/10/15Example 2.11如何将十进制数35转换为

10、二进制数?从这个十进制数35开始,一边连续寻找除以2得到的商和余数,一边左移. 结果是 35 = (100011)2.2022/10/15Example 2.12如何将十进制数126转换为八进制数. 一边连续寻找除以8得到的商和余数,一边左移. 结果是 126 = (176)8.2022/10/15Example 2.13 如何将十进制数126转换为十六进制数. 一边连续寻找除以16得到的商和余数,一边左移. 结果是126 = (7E)162022/10/15例:将十进制整数(105)10转换为二进制整数。解: 2 105 2 52 余数为1 2 26 余数为0 2 13 余数为0 2 6 余

11、数为1 2 3 余数为0 2 1 余数为1 0 余数为1 所以,(105)10(1101001)22022/10/15Figure 2.9 转换十进制的小数部分到其他进制 乘基取整法 转换十进制的小数部分到其他进制 2022/10/15Example 2.14将十进制数0.625转换为二进制数.该例子显示小数部分如何计算. 2022/10/15Example 2.15如何将0.634转换为八进制数且精确到小数四位. 结果是 0.634 = (0.5044)8. 注意,乘以8 (以8为底).2022/10/15Example 2.16如何将十进制数178.6转换为十六进制数,且精确到1位小数.

12、结果是178.6 = (B2.9)16 ,注意,以16为底时除以或乘以16.2022/10/15Example 2.17通常把小于 256的十进制数 转换为二进制数,有一个变通的方法,即把这个数分解为下列二进制位置量对应数的和:2022/10/15Example 2.18当分母是2的幂次时,用类似的方法可以把十进制小数转换为二进制:结果是 (0.011011)22022/10/15二进制-十六进制的转换Binary-hexadecimal conversionFigure 2.10 二进制与十六进制的互换 2022/10/15Example 2.19如何将二进制数 (10011100010)2

13、转换为十六进制数 解:首先将二进制数排为4位一组的形式:100 1110 0010注意:最左边一组可能是1到4位不等. 根据表2.2 所示的值对照每组等量转换得到十六进制数 (4E2)16.2022/10/15Example 2.20与十六进制数(24C)16相等的二进制数是多少? 解:将每个十六进制数码转换成4位一组的二进制数:2 0010, 4 0100, C 1100结果是 (001001001100)2.2022/10/15二进制-八进制的转换Binary-octal conversionFigure 2.11 二进制与八进制的互换 2022/10/15Example 2.21如何将二

14、进制数(101110010)2转换为八进制数.解:每3位一组转换为1位八进制数码. 对照每3位一组等量转换得到八进制数. 结果是 (562)8.101 110 0102022/10/15Example 2.22与(24)8相等的二进制数是多少?解:将每个八进制数码写成对等的二进制位组2 010 4 100结果是 (010100)2.2022/10/15八进制-十六进制的转换Octal-hexadecimal conversionFigure 2.12 八进制与十六进制的互换 2022/10/15Example 2.23找出二进制数码的最小数,用于存储一个最大6个数码的十进制整数.解:k = 6

15、, b1 = 10, b2 = 2. x = k (logb1 / logb2) = 6 (1 / 0.30103) = 20. 最大的6数码十进制数是 999,999 ,并且最大的20位二进制数1,048,575. 注意,可以用19位表示的最大的数是524287, 它比999,999小. 因此需要20位.2022/10/152-3 非位置化数制系统 NONPOSITIONAL NUMBER SYSTEMS 尽管非位置化系统并不用在计算机中, 但我们给出简单的介绍作为和位置化数制系统的比较. 非位置化数制系统仍然使用有限的数字符号,每个符号有一个值. 但是,符号所占用的位置通常与其值无关,每个符号所占的位置是固定的. 为求出该数字的值,我们把所有符号表示的值相加. 2022/10/15该系统数字表示为:并有值为:与前面提到的相加规则有一些例外,如例2.24所示. 2022/10/15Example 2.24罗马数制是非位置化数制系统的一个好例子. 该系统由罗马人发明,在欧洲一直使用到16世纪,该数制系统由一套符号集S = I, V, X, L, C, D, M. 每个符号的取值如表2.3所示2022/10/15为求一个数的值,需遵循特定法则将符号

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论