您好,欢迎访问三七文档
计算机硬件技术基础李丰lifeng@cc.neu.edu.cn2数制及其转换十进制是人们最熟悉的一种进位记数制,它由0-9共10个数字组成,进位方法是逢十进一。在计算机中采用的数制是二进制,有时也使用八进制和十六进制。一切进位记数制都有两个共同点:按基数来进位和借位,按位权值来计数。31.基数不同的记数制是以基数来区分的。假设以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,E,F。数制及其转换4各种记数制都按基数R来进位和借位的,即“逢R进一,借一当R”。例如,对十进制数,“逢十进一,借一当十”;对二进制数,“逢二进一,借一当二”;对八进制数,“逢八进一,借一当八”;对十六进制数,“逢十六进一,借一当十六”。数制及其转换5在任何记数制中,一个数的每个位置各有一个“位权值”。例如,十进制数32,767有5个数符,从左向右它们的位权值分别为万位、千位、百位、十位和个位,即104,103,102,101和100。在这里虽然第三和第五两个位置上的数符都是7,但是,第三位上的7代表700(7×102),而第五位上的7就代表7(7×100)。数制及其转换6按照“用位权值计数”的原则,这5位十进制32,767的值可以写为:(32,767)10=3×104+2×103+7×102+6×101+7×100=30,000+2,000+700+60+7若32,767这5位是八进制数,则可以写为:(32,767)8=3×84+2×83+7×82+6×81+7×80=12,288+1,024+448+48+7=(13815)10数制及其转换7⒈二、八、十六进制转换为十进制(10101.11)2=1×24+0×23+1×22+0×21+1×20+1×2-1+1×2-2=(21.75)10(123.4)8=1×82+2×81+3×80+4×8-1=64+16+3+0.5=(83.5)10(ABC.4)16=10×162+11×161+12×160+4×16-1=2560+176+12+0.25=(2748.25)10数制及其转换8⒉十进制转换为二、八、十六进制将一个十进制数转换为二、八、十六进制数时,其整数部分和小数部分所遵循的转换规则不同。其整数部分的转换规则用的是除R取余法,且先余为低,后余为高;而小数部分的转换规则用的是乘R取整法,且先整为高,后整为低。数制及其转换9⑴将十进制数转换为二进制数例如(8.5678)10:①用“除2取余”的方法先求整数部分“8”的二进制数;②用“乘2取整法”的方法求小数部分“.5678”的二进制数;③将整数部分与小数部分合并。整数部分:2824…余数为022…余数为021…余数为00…余数为1小数部分:0.5678×2=1.1356……取出整数10.1356×2=0.2712……取出整数00.2712×2=0.5424……取出整数00.5424×2=1.0848……取出整数1结果:1000.1001数制及其转换10(2)将十进制数转换为八进制数①用“除8取余”的方法先求整数部分“83”的八进制数;②用“乘8取整法”的方法求小数部分的八进制数;③将整数部分与小数部分合并。整数部分:883810…余数为381…余数为20…余数为1小数部分:0.5×8=4.0……取出整数4转换结果:(83.5)10=(123.4)8数制及其转换11⑶将十进制数转换为十六进制数①用“除16取余”的方法先求整数部分的十六进制数;②用“乘16取整法”的方法求小数部分的十六进制数;③将整数部分与小数部分合并,得到结果。整数部分:16274816171…余数为12(C)810…余数为11(B)0…余数为10(A)小数部分:0.25×16=4.0……取出整数4转换结果:(2748.25)10=(ABC.4)16数制及其转换123.二进制数与8、16进制数间的转换从前面的不同数制转换中可以看出,十进制与二进制之间的转换比较简便,但十进制与八、十六进制数间的转换相对比较麻烦。而8和16都是2的整数乘幂,即8=23,16=24,所以每位八进制数可用3位二进制数表示,每位十六进制数可用4位二进制数表示。八进制数二进制数八进制数二进制数00004100100151012010611030117111十六进制数二进制数十六进制数二进制数0000081000100019100120010A101030011B101140100C110050101D110160110E111070111F1111数制及其转换13(1)二进制转换为8进制(或16进制)的原则⑴以小数点为中心,分别向前、向后每3位(或4位)一组,不足3位(或4位)则以“0”补齐(整数部分在前面补零,小数部分在后面补零);⑵将每个分组用一位对应的八进制(或十六进制)数码代替,得出的结果即为所求的八进制(十六进制)数。例如,(101010.010101)2=101010.010101=(52.25)8(101010.010101)2=00101010.01010100=(2A.54)16数制及其转换14(2)8进制(或16进制)转换为2进制的原则把每一位八进制(或十六进制)的数码展开为3位(或4位)二进制数码,然后,去掉整数首部和小数尾部的“0”,即得出所求的二进制数。例如:(52.25)8=101010.010101=(101011.111001)2(52.25)16=01010010.00100101=(1010010.00100101)2数制及其转换15数制及其转换数制转换总结16+-÷计算机的运算基础17加法运算法则:0+0=00+1=11+0=11+1=10例:求(10011.01)2+(100011.11)2=?10011.01100011.11````+)0.0111011(110111)2练习:求(1011011)2+(1010.11)2=?10110111010.11`+)1.1101001``1(1100101.11)2计算机的运算基础18减法运算法则:0-0=01-0=11-1=010-1=1(0-1)例:求(10110.01)2-(1100.10)2=?10110.011100.10```-)1.11001(1001.11)2练习:求(1010110)2-(1101.11)2=?1010110.001101.11-)1.00001001(1001000.01)2````计算机的运算基础19乘法运算法则:0×0=01×0=00×1=01×1=1例:求(1101.01)2×(110.11)2=?1101.01110.11×)(1011001.0111)21101011101010000001101011101011011001.0111计算机的运算基础20除法运算法则:0÷0=01÷0=(无意义)0÷1=01÷1=1例:求(1101.1)2÷(110)2=?(10.01)2计算机的运算基础110110110110010.011.110121逻辑运算:逻辑代数:逻辑变量:它是指“条件”与“结论”之间的关系。它是指对因果关系进行分析的一种运算,运算结果并不表示数制的大小,而是表示逻辑概念成立还是不成立。是实现逻辑运算的数学工具。(由英国人乔治•布尔创立,又称布尔代数)逻辑代数是通过逻辑变量表示命题的计算机的运算基础22A:今天去郊游B:今天天气好C:今天不上课A=B•C含义:“若‘今天天气好’,并且‘今天不上课’,则‘今天去郊游’”。表示“与”运算,是“并且”的意思逻辑变量计算机的运算基础23A=B+C表示“或”运算表示A、B、C的反命题,表示“非”运算含义:“若‘今天天气不好’,或‘今天上课’,则‘今天不去郊游’”。逻辑变量A:今天去郊游B:今天天气好C:今天不上课计算机的运算基础24三种基本的逻辑关系逻辑与(And)逻辑或(Or)逻辑非(Negate)逻辑异或(Exclusive—Or)计算机的运算基础25与运算符:•×∧∩And运算法则:0∧0=00∧1=01∧0=01∧1=1只要当参与的逻辑变量都为1时,“与”运算的结果才会为1;只要其中有一个为0,其结果就为0。例:逻辑运算10101111•10011101=?1010111110011101∧1011000110001101练习:逻辑运算10111001•11110011=?1011100111110011∧10001101100110001计算机的运算基础26或运算符:运算法则:0∨0=00∨1=11∨0=11∨1=1只要当参与“或”运算的任意一个逻辑变量为1时,“或”运算结果就为1;只有都为0,结果才为0。例:逻辑运算10101010•01100110=?1010101001100110∨0111011111101110练习:逻辑运算10100001•10011011=?1010000110011011∨1101110110111011+∨∪Or计算机的运算基础27非运算符:运算法则:逻辑非运算是逻辑否定的意思,用二进制进行逻辑运算就是“求反”操作。例:逻辑运算练习:逻辑运算在变量上加“—”1=00=110101100=0101001101001011=10110100计算机的运算基础28异或运算符:运算法则:只有参与“异域”运算的两个逻辑变量值不同时,“异域”运算结果为1;否则结果为0。例:逻辑运算10101010000011111010010110100101+00=001=110=111=0+00=000=0+++1010101000001111=++计算机的运算基础29计算机内的数据是以二进制数表示的。计算机内用于存储数据的逻辑部件有两种状态,即高电位和低电位两种状态。这两种状态与二进制数制系统的“1”和“0”相对应。在计算机中,1位二进制数可以表示两个信息状态。2位二进制数,则可以表示4个信息状态;使用3位二进制数,可以表示8个信息状态。可以看出,二进制数的位数和可以表示的信息状态之间存在幂次数的关系。也就是说,当用n位二进制数时,可表示的不同信息状态个数为2n个。计算机在存储数据时,常常把8位二进制数看作一个存储单元,或称为一个字节。把210(即1024)个存储单元称为1KB;把210K(即1024K)个存储单元称为1MB;把210M(即1024M)个存储单元称为1GB;把210G(即1024G)个存储单元称为1TB。计算机中数据的表示30数据可分为数值数据和非数值数据两大类,其中非数值数据又可分为数字符、字母、符号等文本型数据和图形、图像、声音等非文本数据。在计算机中,所有类型的数据都被转换为二进制代码形式加以存储和处理。待数据处理完毕后,再将二进制代码转换成数据的原有形式输出。计算机中数据的表示31计算机中数据的表示计算机应用领域中需要表示的信息有数字、字符、图像、视频和音频等。计算机专家设计了各种方法来对信息进行编码和存储。在计算机里,不同编码方式的文件格式不同,如存储字处理文档、图形数据或音频数据等的文件格式各不相同。32计算机采用二进制格式来存储数值型数据。在计算机中表示一个数值型数据,需要解决3个问题:确定数的长度、数有正负之分和小数点的表示在计算机中表示数值型数据,小数点的位置总是隐含的,以便节省存储空间。隐含的小数点位置可以是固定的,也可以是可变的。前者称为定点数,后者称为浮点数。计算机中数据的表示331.定点数表示方法在定点数中,小数点的位置一旦约定,就不再改变。目前常用的有两种:定点整数,即小数点位置约定在最低数值位的后面,用于表示整数。定点小数,即小数点位置约定在最高数值位的前面,用于表示小于1的纯小数。计算机中数据的表示34定点数表示十进制整数193定点数表示十进制小数-0.6876
本文标题:2数字电路基础
链接地址:https://www.777doc.com/doc-4439203 .html