第1章进制和码元_第1页
第1章进制和码元_第2页
第1章进制和码元_第3页
第1章进制和码元_第4页
第1章进制和码元_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

1、n1.1进制转换及计算进制转换及计算n1.2码制及其转换码制及其转换第一章进制与码元第一章进制与码元为什么要学习进制及码元?n我们日常生活中也有许多不同的进制数据,最常用的是十进制,秒分时之间是六十进制,年月之间是十二进制,古代的钱两斤之间是十六进制。n计算机内采用的是二进制数值或编码。不论是数值、字符、图形、图像、声音等,任何信息数据在计算机内均是用0和1表示。 n而在各种汇编语言中习惯使用十六进制,也可使用八进制、二进制和十进制。nC语言等高级语言中也可使用二进制、八进制、十六进制和十进制。n特别是调试程序时更要与进制和码元换算打交道。 n所以,能够快速的进行进制和码元的换算,对学好有关计

2、算机课程特别汇编、微机原理及接口技术至关重要。1、进制相关概念进制进制基基数码数码位权位权规则规则尾缀尾缀英语单词英语单词二20、1BBinary八807O或QOctal十1009D或省略Decimal十六1609AFHHex1.1 进制转换及计算进制转换及计算2、进制的一般转换方法 按 位 ( 权 ) 展 开 求 累 加 和 任 意 进 制 十 进 制 整 数 : 除 基 取 余 , 逆 写 小 数 : 乘 基 取 整 , 顺 写 图 1 .1 任 意 进 制 与 十 进 制 之 间 转 换 关 系 图 一 展 三 四 合 一 八 进 制 二 进 制 十 六 进 制 三 合 一 一 展 四

3、图 1.2 二 、 八 、 十 六 进 制 之 间 转 换 关 系 图 n非十进制数转十进制数非十进制数转十进制数:n1011.11B=123+022+121+120+12-1+ 12-2 =8+2+1+0.5+0.25 =11.75n5B.8H=5161+11160+816-1 =80+11+0.5 =91.5一般进制转换举例十进制到非十进制数转换十进制到非十进制数转换:n二二 、八、十六进制转换:、八、十六进制转换:n11001.1B=31.4Q= 19.8H nCA.6AH=11001010.0110101B=312.324Q3、进制快速转换方法(一) n十进制转换为十六进制只要把它拆成

4、16的倍数之和,各项直接对应成十六进制再求和即可(注:有时视情况可用16的倍数之差)。n再利用一展四转化为二进制,而后再用三合一转化为八进制。 十进制十六进制拆成十六的倍数之和16的倍数求和16的倍数(详见表1.1)n16*116 10Hn16*232 20Hn16*348 30H n16*464 40Hn16*580 50Hn16*696 60Hn16*7112 70Hn16*8128 80Hn16*9144 90Hn16*10160 A0Hn16*11176 B0Hn16*12192 C0Hn16*13208 D0Hn16*14224 E0Hn16*15240 F0Hn1*16*16256

5、100Hn2*16*16512200Hn3*16*16768300Hn4*16*161024(1K)400Hn8*16*162048(2K)800Hn1*16*16*164096(4K)1000Hn2*16*16*168192(8K)2000H进制快速转换举例n例1.5:280 = 256+16+8 = 118H = 100011000B = 430Qn例1.6:2000 = 1024+768+208或 = 2048-48 = 800H-30H = 7D0H = 11111010000B = 3720Qn例1.7:5000=4096+768+128+8 =1388H = 10011100010

6、00B = 11610Qn十进制转换为二进制只要把它拆成2的n次方之和,有n次方的二进制位写1,无n次方的二进制位写0 即可(注:有时视情况可用2的n次方之差)。n再利用四合一转化为十六进制,而后再用三合一转化为八进制。十进制二进制拆成2的n次方之和进制快速转换方法(二)2的指数n2-4=0.0625n2-3=0.125n2-2=0.25n2-1=0.5n20=1n21=2n22=4n23=8n24=16n25=32n26=64n27=128n28=256n29=512n210=1K(1024)n211=2048n212=4096n214=16Kn216=64Kn220=1M(1024K)n2

7、24=16Mn230=1G(1024M)n240=1T (1024G)进制快速转换举例n例1.8:280 = 28+24+23 = 100011000B = 118H = 430Qn例1.9:2000 = 210+29+28+27+26+24 = 11111010000B = 7D0H = 3720Q =211-25-24n例1.10:5000=212+29+28+27+23 = 1001110001000B =1388H = 11610Q4、进制算术、逻辑运算 n进制计算主要有加减乘除等算术运算和与或非等逻辑运算。n其它进制加减乘除等算术运算的运算方法与十进制的运算方法并没有什么大的不同。要

8、点是N进制的运算是“逢N进一”、“借一等于N”n与、或、非等逻辑运算一般是指二进制的位逻辑运算,将1当成真,将0当成假,与、或、非的真值表如图所示。n A与B A或B 非AAB 0 100 010 1AB 0 100 111 1A0110A1、BCD码 (用二进制编码表示的十进制数)nBCD码种类非常多,有8421、2421、余3等BCD码,用的最多的是8421BCD码 1.2 码制及其转换码制及其转换20nBCD码:用二进制代码对十进制数进行编码,它既具有二进制码的形式 (四位二进制码),又有十进制数的特点(每四位二进制码是一位十进制数)。n二进制数与BCD码之间的转换,需经过十进制。21B

9、CD码(例)n 8421BCD码,又分为压缩BCD码和非压缩BCD码 n压缩BCD码是用4位二进制表示一位十进制、一个字节可以表示两位十进制(0099)n非压缩BCD码是用8位二进制表示一位十进制、高4位无效、一个字节只能表示一位十进制(09),高4位为0时则叫标准非压缩BCD码 高4位低4位十位个位压缩BCD码高4位低4位0000个位标准非压缩BCD码232、ASCII码24n至少要记住至少要记住其中的其中的7 7个字个字符的符的ASCIIASCII码值如表所示:码值如表所示: n0-90-9的的ASCIIASCII码依码依次加次加1 1,AAZZ的的ASCIIASCII码依次加码依次加1

10、1,a-a-z z 的的ASCIIASCII码也是依码也是依次加次加1 1n所以记住所以记住00、AA、a a 的的ASCIIASCII码实质上码实质上是记住了是记住了6262个字符的个字符的ASCIIASCII码码字符ASCII码十进制值ASCII码十六进制值LF(换行)100AHCR(回车)130DHSP(空格)3220H$3624H04830HA6541Ha9761Hn0-9的ASCII码是一种特殊的非压缩BCD码。例如: 35的ASCII码是3335H(35)10的非压缩BCD码即3335H 3、汉字内码 n汉字在计算机及相关设备内存储、处理、传输所用的编码叫 汉字内码 n汉字内码目前

11、主要有三种:国标内码GB231280,占两个字节繁体汉字区的大五码BIG5 ,占两个字节世界语的统一码UCS(CJK) ,占四个字节GB231280汉字标准n我国目前主要采用的是国标内码(GB2312),它在计算机内占用两个字节,每个字节的最高位为1,最多可表示21416384个可区别的码n与国标区位码的计算关系为: 国标内码国标码(16进制)8080H 国标区位码(16进制)+A0A0H 一级汉字3755个、按拼音顺序排列,占16区到55区二级汉字3008个,按编傍笔画数排列,占56区到87区字符682个 ,占1区到14区88区到94区允许自造字存放区4、原码、反码和补码n原码、反码、补码是

12、用来表示有符号数的n原码是在原数的绝对值的二进制数据位在最高位置符号位即负为1、正为0而得到n正数的反码、补码与原码相同n负数的反码为原码的符号位不变其它位变反而得,负数的补码为原码的符号位不变其它位变反+1而得负数三码之间的转换关系 原值 原码 符号位不变其它位变反+1 补码 +1 -1 符号位不变其它位变反 反码 图 1.7 负数的原、反、补码之间转换关系图 原、反、补码的一般求法n例1.11:(8位二进制的原、反、补码)-107=-6BH=-1101011B =11101011B (原) =EBH (原) =10010100B (反) =94H (反) =10010101B (补) =9

13、5H (补)107=6BH (原) =6BH (反) =6BH (补)n原码和反码在计算机内很少采用而主要使用的补码。所以我们主要要撑握原值与补码之间的快速转换方法原值与补码(无符号数)之间的直接转换 n正数的原值与补码(无符号数)完全相同n负数的原值与补码(无符号数)之间的直接转换方法如1.7图所示:(0在用n位二进制补码表示时也代表2n) 0-|X| 原值 X 补码 Y (有符号数) -(0-Y) (无符号数) 图 1.8 负数的原值与补码之间转换关系图 8位二进制原值与补码举例n2014H(补)20(无)n-50-500H-05HFBH(补)251(无)n-1200-12000H-78H

14、88H(补)136(无)nF8H(补)248(无) -(00H-F8H)-08H -(256-248)-8(有)n5CH(补)=92(无)=92(有)0在用n位二进制补码表示时也代表2n16位二进制原值与补码举例n200014H(补)20(无)n-50-50000H-0005H FFFBH(补)65531(无)65536-5n-1200-1200000H-0078H FF88H(补)65416(无) 65536-120nFFC6H(补)=15*16*16*16+15*16*16+12*16+6(无) -(0000H-FFC6H)-3AH-58(有) -(65536-65478)-58(有) 6

15、5536-5865478(无) n048FH1024+128+151165(无)=1165(有)5、二进制数据的表示范围 n二进制数据的表示范围要分有符号数还是无符号数。无符号数所有二进制位(bit)均代表数值位;有符号数的最高位代表符号位,1代表负、0代表正,其余位才是数值位。 nn位二进制无符号数的表示范围为0 (2n-1)。 nn位二进制有符号数的表示范围还要再看其用的什么编码方案,补码为-2n-1 +(2n-1-1);原码、反码的表示范围为-(2n-1-1) +(2n-1-1)。 n8位二进制(1字节)的无符号表示范围为0255,有符号补码表示范围为-128+127;16位二进制(2字

16、节)的无符号表示范围为065535,有符号补码表示范围为-32768+32767。 1.2码制及其转换码制及其转换特殊数10000000 n对无符号数对无符号数:(10000000)B=128n在原码中定义为:在原码中定义为: -0n在反码中定义为:在反码中定义为: -127n在补码中定义为:在补码中定义为: -1286、定点数和浮点数 n规定小数点固定在某个位置不变,该机器数称为定点数n小数点的位置在数中可以变动,该机器数称为浮点数n一般情况下,总是把小数点规定在数的最前面或最后面,即总是把所有的数化为纯小数或纯整数来对待。定点数一般性形式浮点数在机器中的表示方法为:阶符阶符阶码阶码N数符数符尾数尾数S 浮点表示法包括两个部分:一部分是阶码(表示指数);另一部分是尾数(表示有效数字)。设任意一个数P可以表示为: PS2N (或P=2NS ) 其中2为基数,S为一个二进制定点小数,称为尾数,决定了浮点数的精度;N为一个二进制定点整数,称为阶码,它反映了二进制数

温馨提示

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

评论

0/150

提交评论