版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机硬件技术基础,李丰 ,数制及其转换,十进制是人们最熟悉的一种进位记数制,它由0-9共10个数字组成,进位方法是逢十进一。 在计算机中采用的数制是二进制,有时也使用八进制和十六进制。 一切进位记数制都有两个共同点:按基数来进位和借位,按位权值来计数。,1.基数不同的记数制是以基数来区分的。假设以R代表基数。 R= 2时,为二进制,可用的数字为 0,1; R= 8时,为八进制,可用的数字为 0,1,2,3,4,5,6,7; R=10时,为十进制,可用的数字为 0,1,2,3,4,5,6,7,8,9; R=16时,为十六进制,可用的数字为 0,1,2,3,4,5,6,7,8,9,A,B,C,D
2、,E,F。,数制及其转换,各种记数制都按基数R来进位和借位的,即 “逢R进一,借一当R”。 例如, 对十进制数,“逢十进一,借一当十”; 对二进制数,“逢二进一,借一当二”; 对八进制数,“逢八进一,借一当八”; 对十六进制数,“逢十六进一,借一当十六”。,数制及其转换,在任何记数制中,一个数的每个位置各有一个“位权值”。 例如,十进制数32,767有5个数符,从左向右它们的位权值分别为万位、千位、百位、十位和个位,即104,103,102,101和100。在这里虽然第三和第五两个位置上的数符都是7,但是,第三位上的7代表700(7102),而第五位上的7就代表7(7100)。,数制及其转换,
3、按照“用位权值计数”的原则,这5位十进制32,767的值可以写为: (32,767)1031042103710261017100 30,0002,000700607 若32,767这5位是八进制数,则可以写为: (32,767)8384283782681780 12,2881,024448487 (13815)10,数制及其转换,二、八、十六进制转换为十进制 (10101.11)2124023122021120121122 (21.75)10 (123.4)8182281380481641630.5 (83.5)10 (ABC.4)1610162111611216041612560176120
4、.25 (2748.25)10,数制及其转换,十进制转换为二、八、十六进制 将一个十进制数转换为二、八、十六进制数时,其整数部分和小数部分所遵循的转换规则不同。其整数部分的转换规则用的是除R取余法,且先余为低,后余为高;而小数部分的转换规则用的是乘R取整法,且先整为高,后整为低。,数制及其转换,将十进制数转换为二进制数,例如(8.5678)10: 用“除2取余”的方法先求整数部分“8”的二进制数; 用“乘2取整法”的方法求小数部分“.5678”的二进制数; 将整数部分与小数部分合并。,数制及其转换,(2)将十进制数转换为八进制数,用“除8取余”的方法先求整数部分“83”的八进制数; 用“乘8取
5、整法”的方法求小数部分的八进制数; 将整数部分与小数部分合并。,数制及其转换,将十进制数转换为十六进制数,用“除16取余”的方法先求整数部分的十六进制数; 用“乘16取整法”的方法求小数部分的十六进制数; 将整数部分与小数部分合并,得到结果。,数制及其转换,3.二进制数与8、16进制数间的转换,从前面的不同数制转换中可以看出,十进制与二进制之间的转换比较简便,但十进制与八、十六进制数间的转换相对比较麻烦。而8和16都是2的整数乘幂,即823,1624,所以每位八进制数可用3位二进制数表示,每位十六进制数可用4位二进制数表示。,数制及其转换,(1) 二进制转换为8进制(或16进制)的原则,以小数
6、点为中心,分别向前、向后每3位(或4位)一组,不足3位(或4位)则以“0”补齐(整数部分在前面补零,小数部分在后面补零); 将每个分组用一位对应的八进制(或十六进制)数码代替,得出的结果即为所求的八进制(十六进制)数。例如, (101010.010101)2101 010.010 101(52.25)8 (101010.010101)20010 1010.0101 0100(2A.54)16,数制及其转换,(2) 8进制(或16进制)转换为2进制的原则,把每一位八进制(或十六进制)的数码展开为3位(或4位)二进制数码,然后,去掉整数首部和小数尾部的“0”,即得出所求的二进制数。 例如: (52
7、.25)8 101 010.010 101 (101011.111001)2 (52.25)160101 0010.0010 0101 (1010010.00100101)2,数制及其转换,数制及其转换,数制转换总结,+,计算机的运算基础,加法运算法则:,000,011,101,1110,例:求(10011.01)2 (100011.11)2 ?,1 0 0 1 1 . 0 1,1 0 0 0 1 1 . 1 1,),0,. 0,1,1,1,0,1,1,(110111)2,练习:求(1011011)2 (1010.11)2 ?,1 0 1 1 0 1 1,1 0 1 0 . 1 1,),1,.
8、 1,1,0,1,0,0,1,1,(1100101.11)2,计算机的运算基础,减法运算法则:,000,1 0 1,1 1 0,10 11 (0 1),例:求(10110.01)2 (1100.10)2 ?,1 0 1 1 0 . 0 1,1 1 0 0 . 1 0,),1,. 1,1,0,0,1,(1001.11)2,练习:求(1010110)2 (1101.11)2 ?,1 0 1 0 1 1 0 . 0 0,1 1 0 1 . 1 1,),1,. 0,0,0,0,1,0,0,1,(1001000.01)2,计算机的运算基础,乘法运算法则:,000,1 0 0,0 1 0,1 11,例:求
9、(1101.01)2 (110.11)2 ?,1 1 0 1 . 0 1,1 1 0 . 1 1, ),(1011001.0111)2,1 1 0 1 0 1,1 1 0 1 0 1,0 0 0 0 0 0,1 1 0 1 0 1,1 1 0 1 0 1,1 0 1 1 0 0 1 . 0 1 1 1,计算机的运算基础,除法运算法则:,000,1 0 =(无意义),0 1 0,1 11,例:求(1101. 1)2 (110)2 ?,(10.01)2,计算机的运算基础,逻辑运算:,逻辑代数:,逻辑变量:,它是指“条件”与“结论”之间的关系。它是指对因果关系进行分析的一种运算,运算结果并不表示数制
10、的大小,而是表示逻辑概念成立还是不成立。,是实现逻辑运算的数学工具。(由英国人乔治布尔创立,又称布尔代数),逻辑代数是通过逻辑变量表示命题的,计算机的运算基础,A=B C,含义:“若今天天气好,并且今天不上课,则今天去郊游”。,表示“与”运算,是“并且”的意思,逻辑变量,计算机的运算基础,表示“或”运算,表示A、B、C的反命题,表示“非”运算,含义:“若今天天气不好,或今天上课,则今天不去郊游”。,逻辑变量,计算机的运算基础,三种基本的逻辑关系,逻辑与(And),逻辑或(Or),逻辑非(Negate),逻辑异或(ExclusiveOr),计算机的运算基础,与运算符:,运算法则:,0 0 = 0
11、,0 1 = 0,1 0 = 0,1 1 = 1,只要当参与的逻辑变量都为1时,“与”运算的结果才会为1;只要其中有一个为0,其结果就为0。,例:逻辑运算 10101111 10011101 = ?,1 0 1 0 1 1 1 1,1 0 0 1 1 1 0 1,1,0,1,1,0,0,0,1,10001101,练习:逻辑运算1011100111110011 = ?,1 0 1 1 1 0 0 1,1 1 1 1 0 0 1 1,1,0,0,0,1,1,0,1,100110001,计算机的运算基础,或运算符:,运算法则:,0 0 = 0,0 1 = 1,1 0 = 1,1 1 = 1,只要当参
12、与“或”运算的任意一个逻辑变量为1时, “或”运算结果就为1;只有都为0,结果才为0。,例:逻辑运算 10101010 01100110 = ?,1 0 1 0 1 0 1 0,0 1 1 0 0 1 1 0,0,1,1,1,0,1,1,1,11101110,练习:逻辑运算1010000110011011 = ?,1 0 1 0 0 0 0 1,1 0 0 1 1 0 1 1,1,1,0,1,1,1,0,1,10111011,计算机的运算基础,非运算符:,运算法则:,逻辑非运算是逻辑否定的意思,用二进制进行逻辑运算就是“求反”操作。,例:逻辑运算,练习:逻辑运算,在变量上加“”,=,01010
13、011,=,10110100,计算机的运算基础,异或运算符:,运算法则:,只有参与“异域”运算的两个逻辑变量值不同时, “异域”运算结果为1;否则结果为0。,例:逻辑运算,1 0 1 0 1 0 1 0,0 0 0 0 1 1 1 1,1,0,1,0,0,1,0,1,10100101,计算机的运算基础,计算机内的数据是以二进制数表示的。计算机内用于存储数据的逻辑部件有两种状态,即高电位和低电位两种状态。这两种状态与二进制数制系统的“1”和“0”相对应。 在计算机中,1位二进制数可以表示两个信息状态。2位二进制数,则可以表示4个信息状态;使用3位二进制数,可以表示8个信息状态。可以看出,二进制数
14、的位数和可以表示的信息状态之间存在幂次数的关系。也就是说,当用n位二进制数时,可表示的不同信息状态个数为2n个。 计算机在存储数据时,常常把8位二进制数看作一个存储单元,或称为一个字节。把210(即1024)个存储单元称为1KB;把210K(即1024K)个存储单元称为1MB;把210M(即1024M)个存储单元称为1GB;把210G(即1024G)个存储单元称为1TB。,计算机中数据的表示,数据可分为数值数据和非数值数据两大类,其中非数值数据又可分为数字符、字母、符号等文本型数据和图形、图像、声音等非文本数据。 在计算机中,所有类型的数据都被转换为二进制代码形式加以存储和处理。待数据处理完毕
15、后,再将二进制代码转换成数据的原有形式输出。,计算机中数据的表示,计算机中数据的表示,计算机应用领域中需要表示的信息有数字、字符、图像、视频和音频等。 计算机专家设计了各种方法来对信息进行编码和存储。 在计算机里,不同编码方式的文件格式不同,如存储字处理文档、图形数据或音频数据等的文件格式各不相同。,计算机采用二进制格式来存储数值型数据。在计算机中表示一个数值型数据,需要解决3个问题:确定数的长度、数有正负之分和小数点的表示 在计算机中表示数值型数据,小数点的位置总是隐含的,以便节省存储空间。 隐含的小数点位置可以是固定的,也可以是可变的。前者称为定点数,后者称为浮点数。,计算机中数据的表示,
16、1.定点数表示方法,在定点数中,小数点的位置一旦约定,就不再改变。 目前常用的有两种:定点整数,即小数点位置约定在最低数值位的后面,用于表示整数。定点小数,即小数点位置约定在最高数值位的前面,用于表示小于1的纯小数。,计算机中数据的表示,若两个字节长度用来表示定点小数,则最低位的权值为215(在104-105之间),即至多准确到小数点后的第四至第五位(按十进制计算)。这样的范围和精度,即使在一般应用中也难以满足需要。 如果把定点整数的长度扩充为4个字节,则整数表示范围可从32,767扩大到2,147,483,6470.211010,即21亿多。但每个数占用的存储空间也增加了一倍。,计算机中数据
17、的表示,2.浮点数表示方法,浮点数表示方法来源于数学中的指数表示形式: NMRC 例如,十进制数193可以写作0.193103;类似地,二进制数11000001可以写作0.1100000128等。 由此可见,每个浮点数包括两部分,即尾数和阶码。 浮点数的尾数为小于1的小数,表示方法与定点小数相似,其长度将影响数的精度,其符号将决定数的符号。,计算机中数据的表示,浮点数的阶码相当于数学中的指数,其大小将决定数的表示范围。 假定一个浮点数用4个字节来表示,其中尾数占3个字节,阶码占1个字节,且每一部分的第一位用于表示该部分的符号,则浮点数的精度可达到小数点后的第七位(223107);数的表示范围可
18、达到1038(2127),远远大于4字节定点整数的表示范围(0.211010)。,计算机中数据的表示,计算机中数据的表示,3.二-十进制(BCD码),常用的BCD编码为8421编码。1位十进制数用4位二进制数来表示,4.西文字符数据的表示,在计算机数据中,字符型数据占有很大比重。字符编码是指用一系列的二进制数来表示非数值型数据(如字符、标点符号等)的方法,也简称为编码。 在计算机最初发展的20世纪40年代,出现了好几种字符编码。当今,使用最广泛的3种编码方式是ASCII、ANSI和EBCDIC码,第四种编码方式Unicode正在发展中。,计算机中数据的表示,(1) ASCII码,ASCII(美
19、国信息交换标准码)是使用最广的。使用ASCII码编码的文件称为ASCII文件。标准的ASCII编码使用7个二进制数来表示128个字符,包括英文大小写字母、标点符号、数字和特殊控制符,如下表所示。,计算机中数据的表示,(2)ANSI码,ANSI(美国国家标准协会)编码使用8位二进制数来表示每个字符。8个二进制数能表示256个信息单元,因此该编码可以对256个字符、符号等进行编码。 ANSI开始的128个字符的编码和ASCII定义的一样,只是在最高位上加个0。 例如,在ASCII编码中,字符“A”表示为1000001,而在ANSI编码中,则用01000001表示。除了表示ASCII编码中的128个
20、字符外,ANSI编码还有128个符号可以表示,如版权符、英镑符、外国语言字符等。,计算机中数据的表示,(3)EBCDIC码,EBCDIC(扩展二、十进制交换码)是IBM公司为它的大型机开发的8位字符编码。 值得注意的是,在EBCDIC编码开始的128个字符中,EBCDIC的编码和ASCII或ANSI的编码并不相同。 总的来说,标准的ASCII编码定义的128个字符,对于表示数字、字符、标点符号和特殊字符来说是足够了。 ANSI编码表示了所有的ASCII编码所表示的128个字符,并且还表示了欧洲语言中的字符。 EBCDIC编码表示了标准的字符和控制代码。但是,没有一种编码方案支持可选的字符集,也
21、不支持非字母组合起来的语言,如汉语、日语等。,计算机中数据的表示,(4)Unicode编码,Unicode编码是一组16位编码,可以表示超过65,000个不同的信息单元。 从原理上讲,Unicode可以表示现在正在使用的、或者已经不再使用的任何语言中的字符。 对于国际商业和通信来说,这种编码方式是非常有用的,因为在一个文件中可能需要包含有汉语、日语、英语等不同的语种。并且,Unicode编码还适用于软件的本地化,即可以针对特定的国家修改软件。 另外,使用Unicode编码,软件开发人员可以修改屏幕的提示、菜单和错误信息提示等,来适用于不同国家的语言文字。,计算机中数据的表示,5.中文字符数据的
22、表示,英文为拼音文字,所有的字均由52个英文大小写字母拼组而成,加上数字及其它标点符号,常用的字符仅95种,故7位二进制数编码已经够用了。 而汉字就不同了,汉字是象形文字,每个汉字字符都有自己的形状。所以,每个汉字在计算机中都有一个二进制代码。 除此之外,为了利用计算机系统中现有的西文键盘来输入汉字,还要对每个汉字编一个西文键盘输入码(简称输入码)。 为了完成汉字的显示或打印,针对每个汉字还要编制一个“汉字字形编码”。,计算机中数据的表示,(1)汉字输入码,汉字输入码一般是用键盘上的字母和数字描述。 在众多的汉字输入码中,按照其编码规则主要分为形码、音码与混合码等三类。 形码 形码也称义码,它
23、是一类按照汉字的字形或字义进行编码的方法。常用的形码有五笔字型、郑码、表形码等。 音码 音码是一类按照汉字的读音(即汉语拼音)进行编码的方法。常用的音码有全拼拼音、全拼双音、双拼双音等。 混合码 这是一类将汉字的字形(或字义)和字音相结合的编码,也称为音形码或结合码。常用的有自然码等。 由于汉字编码方法的不同,一个汉字可以有许多不同的输入码。,计算机中数据的表示,(2)汉字交换码,计算机各系统之间交换信息时,也要交换汉字信息。由于各计算机系统所使用的机内码还未形成一个统一的标准,因此,如果使用汉字的机内码交换汉字信息,就有可能使各计算机系统之间不认识对方的汉字的机内码,从而使信息交换失败。 为
24、了便于各计算机系统之间准确无误地交换汉字信息,必须规定一种专门用于汉字信息交换的统一编码,这种编码称为汉字的交换码。 1981年,我国颁布了信息交换用汉字编码字符集基本集(代号GB231280),又称“国标码”。它共包含6763个常用汉字(其中一级汉字3755个,二级汉字3008个),以及英、俄、日文字母及其符号共687个。,计算机中数据的表示,(3)汉字机内码,国标码从理论上说可以作为汉字的机内编码,但为了避免与英文字符的编码相混淆(因为可能会误把一个汉字编码视为两个西文字符的编码),故需对国标码稍加修改才能作为汉字的机内编码。 ASCII码的机内码的最高位为“”,为与之相区别,将国标码的两
25、个字节的最高位均改为“1”,这样就得到了汉字字符的机内编码(简称机内码)。 输入英文字符时,想输入什么字符便按什么键,输入码与机内码总是一致的。汉字输入则不同,如要输入“大”字时,键盘并没有“大”字这个键。 如果采用“拼音输入法”,则需依次按下“d”和“a”两键,那么在拼音输入法中,“da”即为“大”字的输入编码。 汉字的输入编码方法有很多,最常见的有音码(如“全拼”、“简拼”等)、形码(如“五笔字型”)与音形码(如“自然码”)等。无论采用哪种汉字输入码,当用户输入汉字时,存入计算机中的总是汉字的机内码,与所采用的输入法无关。,计算机中数据的表示,(4)汉字字形码,显示/打印汉字时要用到汉字字
26、形编码。字形编码即汉字字型的二进制数编码。 下图描述了 “中”字的1616点阵字形。,计算机中数据的表示,当一个汉字需显示或打印输出时,需将汉字的机内码转换成字形编码,它们之间也是一一对应的关系。 所有汉字的点阵字形编码的集合称为“汉字库”。不同的字体(如宋体、仿宋、楷体、黑体等)对应着不同的字库。 在计算机内,汉字字形描述方法除点阵字形外,还有矢量表示方式即轮廓字形。 轮廓字形是把汉字、字母、符号中的笔画的轮廓用一组直线和曲线来勾画,记下每一直线和曲线的数学描述公式。其优点是占用存储区小、缩放不变形、不失真。轮廓字形也称为全真字体(True Type)。,(4)汉字字形码,计算机中数据的表示
27、,带符号数的表示方法,符号位:数字的最高位作为符号位, 如果最高位是0,则表示正数, 如果最高位是1,则表示负数。 真 值:符号位加上该数的绝对值,即为该数 的真值。 00010010 18 10010010 18,计算机中数据的表示,机器数,0,1,0,0,1,1,0,1,+77,符号位,真值,机 器 数 / 真 值,计算机中数据的表示,正数的符号位用0表示, 负数的符号位用1表示, 其余各位表示数值本身。 数值 原码 符号位 二进制数值 正数 52 X原 0 0110100 负数 52 X原 1 0110100 正数 0 X原 0 0000000 负数 0 X原 1 0000000,原码表
28、示法,计算机中数据的表示,正数的反码表示与原码相同,即:符号位用0表示,其余位为数值位。 负数的反码表示:除符号位不变外(仍为1),其余各位按位取反。 数值 反码 符号位 二进制数值 正数 52 X反 0 0110100 负数 52 X反 1 1001011 正数 0 X反 0 0000000 负数 0 X反 1 1111111,反码表示法,计算机中数据的表示,正数的补码表示与原码相同,即:符号位用0表示,其余位为数值位 负数的补码表示:等于它的反码1。 数值 补码 符号位 二进制数值 正数 52 X补 0 0110100 负数 52 X补 1 1001100 正数 0 X补 0 0000000 负数 0 X补 0 0000000,补码表示法,计算机中数据的表示,1,1,带 符 号 的 机 器 数,-77,原码,反码,补码,计算机中数据的表示,机器数表示范围 对于8位二进制数,原码表示范围为-127+127 对于16位二进制数,原码表示范围为-32767+32767 对于8位二进制数,反码表示范围为-127+127 对于16位二进制数,反码表示范围为-32767+32767 对于8位二进制数,补码表示范围为-128+
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数字化浪潮下河南联通市场营销策略的创新与突破
- 数字化浪潮下佛山市BD建筑设计院战略转型与发展路径研究
- 数字化浪潮下上海网络平台配送员劳动权益保障的困境与突破
- 2025 四季变化作文课件
- 2025 可爱的蚕宝宝成长作文课件
- 环保型橡胶软化剂生产线项目商业计划书
- Axure网站与App原型设计(全彩慕课版)(AxureRP10)-教学大纲
- 水泥混合料配比设计方案
- 污水泵站提升改造工程规划设计
- 施工材料进场检验方案
- 2024年高考数学试卷(理科)(全国甲卷)【含解析】
- 统编版七年级历史下册期末知识点复习提纲
- 2024-员工上班带小孩的免责协议
- 2024年新改版青岛版(六三制)四年级下册科学全册知识点
- 高中数学专题讲座课件
- 斜拉桥病害分析报告
- 《伤口换药技术》课件
- 核酸扩增技术完整版
- 小学生古诗词大赛备考题库(300题)
- 化学预氧化简介
- 中节能原平长梁沟10万千瓦风电场项目220kV送出工程环评报告
评论
0/150
提交评论