《微机原理-第1章》由会员分享,可在线阅读,更多相关《微机原理-第1章(45页珍藏版)》请在金锄头文库上搜索。
1、第1章 数制与码制,本章要点: 数制表示法 数制之间的转化 二进制数运算 有符号数的表示 ASCII码,1.1 二进制数的基础知识,一、 任意进制数的表示,任意一个数N可以表示成P进制数:,式中i表示数的某一位, 表示第i位的数字,P为基数,为第i位的权,M、N为正整数。 =0,1P-1。,1.1 二进制数的基础知识,对于n位整数m位小数的任意十进制数N,有:,( =0,1,9),1.1 二进制数的基础知识,对于n位整数m位小数的任意二进制数 ,有:,( =0或1),1.1 二进制数的基础知识,对于n位整数m位小数的任意十六进制数有:,( =0,1,9,A,B,C,D,E,F),1.1 二进制
2、数的基础知识,二、 各种进制间的相互转换,(1)整数部分:N 除以P取余数,0 余数为:1=, 301=12DH,1.1 二进制数的基础知识,0 余数为:1=,例2. 十进制数301 二进制数,转换过程如下:, 301=100101101B,1.1 二进制数的基础知识,(2)纯小数部分:N乘以P取整数例1. 十进制小数0.6875 二进制小数,转换过程如下:, 0.6875=0.1011B, 0.6875=0.B H,0.52 =1.0 =1,0.752 =1.5 =1,0.375 2 =0.75 =0,0.68752 =1.375 =1,0.687516 =11.0 =B,1.1 二进制数的
3、基础知识,按权展开,即位置加权法,1.1 二进制数的基础知识,1.1 二进制数的基础知识,1.2 有符号二进制数的表示方法及溢出问题,一、 有符号二进制数的表示方法,前面我们接触的二进制数均为无符号数,即所有二进制数位均为数值位,很多情况下都是这样对待的。但在有些情况下,有些数值是带符号的,即可能是正数,也可能是负数。这样就存在一个有符号二进制数的表示方法问题。,1.2 有符号二进制数的表示方法及溢出问题,我们假定讨论的数为整数,对8位有符号二进制整数,用下表示:,这种表示方法称为机器数表示法。有符号二进制数的真值为它对应的十进制数。,1.2 有符号二进制数的表示方法及溢出问题,1.2 有符号
4、二进制数的表示方法及溢出问题,1.2 有符号二进制数的表示方法及溢出问题,优点:表示简单,易于理解,真值转换方便。,缺点:+、-运算麻烦。因为它仅仅是将其值的符号用一 位二进制数表示,因而它的原码数的+、-运算完全同笔 算。如两个正数相减,计算机首先要判断被减数的绝对 值与减数的绝对值的大小,然后决定是颠倒过来相减, 还是直接相减。最后在结果的前面加上正确的正负号。 所以,势必增加运行时间,降低速度,使运算器的逻辑 复杂化。为了改进它,引进了补码的概念。,有符号二进制数用原码表示的优缺点:,1.2 有符号二进制数的表示方法及溢出问题,3. 补码表示法,(1)补码的概念,x 当,当,(mod )
5、,1.2 有符号二进制数的表示方法及溢出问题,(2)一个数的补码的求法,根据定义求补码,= = ,,x+127 溢出,0 1 0 0 1 0 0 0 B,0 1 1 0 0 0 1 0 B,1 0 1 0 1 0 1 0 B,+,有进位 =1,无进位 =0,溢出,结果出错(正溢出),1.2 有符号二进制数的表示方法及溢出问题,例: (-83)+(-80)=-1639时,高位进行加六修正。,例:94+7=101,2.3 二进制编码的十进制数(BCD编码),1 0 0 1 0 1 0 0 94,1 0 1 0 0 0 0 1 高4位满足法则3,0 0 0 0 0 1 1 1 7,1 0 0 1 1
6、 0 1 1 低4位满足法则2,+,1.3 二进制编码的十进制数(BCD编码),减六修正规则:,(1)如果两个BCD码位相减没有借位,则该位不需修正。,(2)如果两个BCD码位相减有借位,则该位进行减六修正。,例:5029=21,1.3 二进制编码的十进制数(BCD编码),0 1 0 1 0 0 0 0 50,0 0 1 0 0 0 0 1 21结果正确,0 0 1 0 1 0 0 1 29,0 0 1 0 0 1 1 1 低码位有借位,1.4 ASCII字符代码,ASCII 美国国家信息标准交换码,ASCII 用7位二进制代码对任一字符编码,包括:,32个通用控制符,0-9 10个数字,52
7、个英文大小写字母,34个专用符号,共128个,要求掌握常用字符的ASCII码: 09, AZ,az, 空格,回车,换行,作业,本章习题: 1.(1)(2) 2.(2)(4)(6) 3.(1)(2) 4.(1)(2) 5.(1)(2) 6.(1)(2)(6) 7.(1)(2)(3) 8.(1)(2)(3)(4) 9.(1)(2)(5)(6) 10.(2)(3) 11.(2)(4) 12.(1)(3)(5)(8) 13.(1)(4) 14.(1)(2) 15.(3)(6) 16.(2) 17.(1)(2),习题,1、8位二进制补码能够表示的数值范围是。 2、8位二进制补码0C7H和0E0H相加,则OF= 。 3、ASCII码为42H的字符是 。,-128127,0,B,