第1章 数制和码制.doc_第1页
第1章 数制和码制.doc_第2页
第1章 数制和码制.doc_第3页
第1章 数制和码制.doc_第4页
第1章 数制和码制.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

*微机组成:CPU、MEM、I/O微机的基本结构微机原理(一):第一章 数制和码制1.1 数制 (解决如何表示数值的问题)一、数制表示1、十进制数 表达式为:A 如:(34.6)10 3101 + 4100 + 610-12、X进制数 表达式为:B 如:(11.01)2 121 + 120 + 02-1+ 12-2 (34.65)16 3161 + 4160 + 616-1+ 516-2X进制要点:X为基数,逢X进1,Xi为权重。(X个数字符号:0,1,X-1)区分符号:D-decimal (0-9),通常D可略去,B-binary (0-1), Q-octal (0-7), H-hexadecimal (0-9, A-F)常用数字对应关系:D: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,12, 13,14,15B:0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111H: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F二、数制转换1、X 十方法:按权展开,逐项累加。 如: 34.6 Q 381 + 480 + 68-1 = 24 + 4 + 0.75 = 28.75 D2、十 X即:A十进制 B X进制 令整数相等,即得:A整数 (BN-1XN-1 + + B1X1 )+ B0X0 此式一次除以X可得余数B0,再次除以X可得B1,如此直至得到BN-1 令小数相等,即得:A小数 B-1X-1 +( B-2X-2 + + B-MX-M ) 此式一次乘X可得整数B-1,再次乘X可得B-2,如此直至得到B-M. 归纳即得转换方法:除X取余,乘X取整。 (适用于任意进制转换) 如:十 二: 25.375 D 11001.011 B 2 | 2 5 2 x 0.375 1 2 1 x 0.750 0 6 0 x 1.50 1 3 0 x 1.00 1 1 1 0 0 1 十 八:346.152 D 532.1157 Q (“四舍五入”改为“到半进一”) 8 | 3 4 6 8 x 0.152 4 3 2 x 1.216 1 5 3 x 1.728 1 0 5 x 5.824 5 x 6.592 6 x 4.736 4 3、二 十六 ,二 八 (简捷方法) 方法:四合一,一分四;三合一,一分三。 自小数点开始: 如:二 十六:1011011.011001 B 0101 1011.0110 0100B 5B.64 H 十六 二:3A.5D H 0011 1010.0101 1101 B 二 八: 1011011.011001 B 001 011 011.011 001 B 133.31 Q 八 二:46.15 Q 100 110.001 101 B 三、数的运算1、算术运算加减乘除 如: 00110110 10011011 11 0011 + 01000111 - 01010110 10 011/ 1010 01111101 01000101 00 011 + 11 100 110 011 102、逻辑运算与或异非 如: 01110110 10010011 10000011 AND 01000111 OR 01010010 XOR 01010010 NOT 10010011 01000110 11010011 11010001 01101100 算法: 有0得0 有1得1 相同得0 每位取反 常用于:按位清0 按位置1 整体清0 整体取反四、BCD和ASCII1、BCD:二进制编码的十进制数 即:十进制数的每一位用4位二进制数表示。优点:比二进制更直观,机器可识别。缺点:运算麻烦,需调整。 如: 36.9 (0011 0110.1001)BCD (0011 1001)BCD 39 , 注意:前者 00111001B 57分为:组合BCD (每字节放两位),如:35 (0011 0101)BCD 分离BCD(每字节放一位),如:47 (xxxx 0100 xxxx 0111)BCD 用BCD码运算时,结果要进行调整(否则,结果可能有误): 加法调整:加6调整 (Di有进位吗?Di9吗?) 如: 0001 1001 19 0011 0110 36 BCD码 + 0100 1000 48 + 0100 0111 47 BCD码 0110 0001 61 (有进位) 0111 1101 7D ( 9 ) 非BCD码 + 0000 0110 06 + 0000 0110 06 调整 0110 0111 67 1000 0011 83 变回BCD码 减法调整:减6调整 (Di有借位吗?) 如: 0110 0101 65 BCD码 - 0011 0111 37 BCD码 0010 1110 2E (有借位) 非BCD码 - 0000 0110 06 调整 0010 1000 28 变回BCD码2、ASCII:字符代码(即用7位二进制数表示常用的字符,共27=128个。第8位通常用作校验位。) 如: R 52H 1010010B 09 30H39H, AZ 41H5AH,+ 2BH 若加校验位(ASCII共8位),则:偶校验:补一校验位,使1的总个数为偶数。 如:加偶校验后,R的ASCII = 11010010B 奇校验:补一校验位,使1的总个数为奇数。如:加奇校验后,R的ASCII = 01010010B1.2 码制 (解决如何表示有符号数的问题) 机器数:将符号数字化,并与数值结合在一起,形成的(适于机器识读的)有符号数。真 值:机器数的实际数值(即符号没经数字化的有符号数)。一、原码和补码 1、原码 (积)定义:设 |X| Xn-2X1 X0, 则 X原 0 Xn-2X1 X0, 当X0 X原 1 Xn-2X1 X0, 当X0 如:X1 +1001010 则X1原 01001010 X2 -1001010 则X2原 11001010 原码真值范围:1 11,0 11 , 即:最小,最大8位原码的真值范围:1 1111111,0 1111111,即:-127 +1272、补码 (和) 同余概念:a NK a (mod K) (同余数相差模,同模内则唯一。类似于:生日) 补码定义: (n位补码,mod 2n) X补 X, 当0X2n-1 X补 2 n+X, 当-2n-1X0 (编码) 补码实质,即:X补0-|X| * * D- + D+ ,(X0) (即代数和) 可见:正数的补码同原码,负数才有求补问题。以2n为模,称2补码。 n位补码的真值范围:1 00,0 11 ,即:-2n-1,+2n-1-1 8位补码的真值范围:1 0000000,0 1111111,即:-128 +127 补码求法: 、按定义求: X补 2 n + X, X0 如:X -1001010B,n=8, 则X1补 2 8 + (-01001010B) 100000000B - 1001010B 10110110B (减法不方便)或:X1补 0-|X|00000000B-01001010B10110110B (结果相同) 、由原码求:X补 X原 符号位不变,其余取反加1 *推导:设 X Xn-2X1 X0, (X0), 则 X原 2n-1 + Xn-2X1 X0, X补 2 n + X 2n-1 + 2n-1 + X 2n-1 + (11 + 1) + X 2n-1 + (11-|X|) + 1 2n-1 + + 1 X原符号不变、其余取反+1 如: X -1001010B,n8, 则 X原 11001010B X补 10110101B+1 10110110B (原码补码,更容易求)补码原码: X补补 X原 如:X补 10110110B, 则 X原 X补补 11001001B+1 11001010B 补码真值: 由补码变到原码,再得出真值(正数:原码补码;负数:原码=补码的符号位不变、其余取反+1) 如:X1补 00110110B, 则,X1补真值 +0110110B +54 X2补 10110100B, 则 X2原 X2补补 11001011B+1 11001100BX2补真值 -1001100B -76 直接按正负代数和计算,得出真值 如:X2补 10110100B, 则X2补真值 -2 7 + 0110100B -128+52 -76求负运算: 设 Y补 Yn-1Y1 Y0, 则 -Y补 + 1 ( 即:求负取反1, 易证:0XX反1)补码运算: X+Y补 X补 Y补 , (mod 2n) ; (前后同余,不溢则同模) X-Y补 X补 Y补 X补-Y补 如:00100100B+11110001B00010101B 即:36补+-15补 21补溢出判别:( 溢出即超出了补码的真值范围:-2n-1,+2n-11 ) *推导如下:(易知:正+负 负+正 正+正? 负+负?) 00110000 +48补 10100000 -96补 + 10000000 -128补 + 01110000 +112补 10110000 -80补(进位00) 00010000 +16补(进位11) 01000000 +64补 10010000 -112补 + 01010000 +80补 + 10100000 -96补 10010000 -112补(进位01) 00110000 +48补(进位10)二、定点数和浮点数 (解决如何使数值范围足够大的问题)1、定点数:小数点位置固定(隐含)。 (特点:格式简单、真值范围小) 约定小数点在最高数值位之前,则为纯小数。格式:1位符号位n位数值位 (原码)真值范围:(12-n),(12-n),即:0.11,0.11 绝对值:最大值为12-n,最小值为2-n 如:纯小数定点数01001101B,真值为0.1001101B 纯小数定点数10010010B,真值为0.0010010B 约定小数点在最低数值位之后,则为纯整数。格式:1位符号位,n位数值位 (原码)真值范围:(2n1),(2n1,即:011,011 绝对值:最大值为2n1,最小值为1 如:纯整数定点数01001111B,真值为01001111B 纯整数定点数11010000B,真值为01010000B上溢:计算结果的绝对值大于定点数最大绝对值。下溢:计算结果的绝对值小于定点数最小绝对值。实际数并非都是纯整数或纯小数,因此运算时需选择“比例因子”,以化成纯整数或纯小数,并要防止结果“上溢”或“下溢”。2、浮点数:由阶码和尾数表示(小数点浮动)。(特点:格式复杂、真值范围大)其中,阶码是纯整数,尾数是纯小数。E和F可用原码或补码。真值小数点的实际位置由阶符和阶码决定,因此是浮动的。 对应真值:N = F2 E = d2 P 真值范围:-(1-2-n) ,+(1-2-n) (范围远大于定点数)绝对值:最大值为(1-2-n),最小值为2-n 规格化浮点数:尾数(绝对值)首位为1的浮点数。(这样有效位数最多)比较:0.1110011B24 和0.0001110B27 ,显然前者有效位数多。 例:设X = -13.5625,请用规格化浮点数表示(假定E用8位原码,F用16位补码)。 解:X = -13.5625 = -1101.1001B = (-0.11011001B)2 +4 E = +4 = 00000100B (8位原码,纯整数)F = -0.11011001B = -0.110 1100 1000 0000 B (扩至16位)= 10010011 10000000 B (16位补码,纯小数)故X的规格化浮点数为:00000100 10010011 10000000B *另外,若F用补码,则有如下形式: 正数:0.1* *, F01* * ; ( 0.5X1 ) 负数:0.1* *, F10x x ; (1X0.5 ) 如:(0.1010011B)补码 01010011B (0.1010011B)补码 10101101B 显然,首位可省去,符号仍明确,但尾数可多一位(精度更高)。 浮点数在加减之前,先要对阶(即对齐小数点)。对阶规则:阶码小的尾数右移(每右移1位,阶码加1),直至两数阶码相等为止。* 计算机中的数串可代表:有符号数、无符号数、BCD、ASCII、原码、补码、定点数、浮点数、指令代码等。究竟是何含义,由编程者约定。看作无符号数,加法时可能有进位,减法时可能有借位。进位或借位是结果的一部分。看作有符号数,进位或借位不是结果,但可用于判断结果是否溢出。不管是无符号数运算还是有符号数运算,计算机都会把进位或借位情况保存在CF,溢出标志保存在OF,供编程者使用。 本章小结 十、二、十六进制数的表示方法和相互转换 二进制数的算术运算和逻辑运算规则 BCD码的表示和运算规则,ASCII的表示及校验设置 有符号数的原码、补码表示法,补码运算规则及溢出判别 定点数、浮点数的表示及含义习题一1、十进制 二进制:73.8125 =2、十进制 十六进制:299.34375 =3、二进制 十进制:10010010.001B =4、十六进制 十进制:8F.7H =5、已知

温馨提示

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

评论

0/150

提交评论