清华大学微机原理-计算机基础_第1页
清华大学微机原理-计算机基础_第2页
清华大学微机原理-计算机基础_第3页
清华大学微机原理-计算机基础_第4页
清华大学微机原理-计算机基础_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

2007.6.13微型计算机原理及应用1计算机中的数制微型计算机基础4二进制数的逻辑运算2符号数的表示方法5二进制编码6BCD数的加减运算3二进制数的加减运算1计算机中的数制常用数制----二,十,十六进制为了区别3种不同数制,约定目前在计算机中,数几乎全部用二进制表示为书写方便,微机中的二进制数用十六进制数缩写人们最熟悉、最常用的是十进制数数后加B表示二进制数数后加D或不加表示十进制数数后加H表示十六进制数

十进制、二进制、十六进制数之间的关系表十进制二进制十六进制十进制二进制十六进制000000810008100011910019200102101010A300113111011B401004121100C501015131101D601106141110E701117151111F数制间转换二进制整数→十六:从右(最低位)向左将二进制数4位1组划分,最后一组若不足4位则在其左边补0,每组用1位十六进制数表示如:1111111000111B→1111111000111B

→0001111111000111B=1FC7H十六→二:用4位二进制数代替1位十六进制数1.二←→十六如:3AB9H=0011101010111001B数制间转换十六→十:将十六进制数按权展开相加十进制整数→十六:除16取余法2.十六←→十如:38947=9823H如:

1F3DH=163×1+162×15+161×3+160×13=4096×1+256×15+16×3+1×13=4096+3840+48+13=7997

16389473162434216152816990余数倒序排列数制间转换3.二←→十十进制数→二进制数:十进制数→十六进制数→二进制数二进制数→十进制数:二进制数→十六进制数→十进制数使用2n的二进制数(等于1后跟n个0)和十六进制数、十进制数的对应关系(如下表所示)以及个别十进制整数和十六进制数的对应关系(如50=32H,80=50H,100=64H等)转换,如:38947=32768+4096+2048+32+3=8000H+1000H+800H+20H+3H=9823H1F3DH=2000H-(80H+40H+3H)=8192-(128+64+3)=79973种数制的对应关系方法:利用2n和十六进制数、十进制数的对应关系,实现数制转换。2n二进制十六进制十进制常用缩写241

000010162510

0000203226100

00004064271000

000080128281

0000

00001002562910

0000

0000200512210100

0000

000040010241K2111000

0000

000080020482K2121

0000

0000

0000100040964K21310

0000

0000

0000200081928K214100

0000

0000

000040001638416K2151000

0000

0000

000080003276832K2161

0000

0000

0000

0000100006553664K2符号数的表示方法用数的符号和数值部分一起编码的方法表示符号数二进制数的最高位是符号位。正数的最高位为0,负数的最高位为1区分:机器数、真值、无符号数符号数常用的表示法:补码,原码,反码

正数的补码,符号位为0,数值部分为其绝对值;负数的补码为与其绝对值相等的正数的补数补数有两种求法:①从最低位向最高位扫描,保留直至第一个“1”的所有“0”,第一个“1”左边各位按位取反如:X1=105=+1101001B[X1]补=01101001BX2=-105=-1101001B[X2]补=10010111B②按位取反后再加1对补码表示的负数求补可以得到其绝对值如[-105]补=10010111B=97H求补,得:01101001=69H=105,即补码表示的机器数97H的真值是-69H(-105)。2.1补码注:一个补码数,若最高位为0,则该数即为此数的绝对值;若最高位为1,则其补数为该数的绝对值8位补码数的范围:80H~7FH(-128~127).16位补码数的范围:8000H~7FFFH(-32768~32767)补码数80H和8000H的最高位既代表了符号为负又代表了数值为11个二进制补码数的符号位向左扩展若干位后,所得到的补码数的真值不变如:[68]补=44H→字节,

[68]补=0044H→字

[-68]补=BCH→字节,

[-68]补=FFBCH→字微机中,符号数用补码表示!→数值为其绝对值,正数的符号位为0,负数的符号位为1。如:X1=105=+1101001B[X1]原=01101001BX2=-105=-1101001B[X2]原=11101001B2.2原码注:原码表示的数,8位数中,D7位为符号位,其余7位为数值位(为真值的绝对值)8位原码数的数值范围为FFH~7FH(-127~127);16位原码数的数值范围为FFFFH~7FFFH(-32767~32767)原码表示简单易懂,且与真值转换方便,但内部运算复杂,为简化计算机结构,引进了反码和补码注:

一个负数的反码的数值部分并不是其真值的绝对值,要按位取反才能求得真值的绝对值正数的反码与原码一样,符号位为0,其余位为其数值;负数的反码为它的绝对值连同符号位按位取反如:X1=105=+1101001B[X1]反=01101001BX2=-105=-1101001B[X2]反=10010110B2.3反码3二进制数的加减运算二进制加法规则:二进制减法规则:0+0=00+1=1+0=11+1=0→进位10-0=01-0=11-1=00-1=1→借位1计算机把机器数均当作无符号数进行运算,即符号位也参与运算1)两个无符号数相加----和为正数.当和超过其位数所允许的范围时,向更高位进位,用CF表示如:

59+164=3BH+0A4H

127+160=7FH+A0H=0DFH=11FH=287

无进位,CF=0有进位,CF=13.1无符号数的运算

00111011+1010010011011111

01111111+10100000100011111进位192-10=C0H-0AH=B6H=182无借位,CF=010-192=0AH-C0H=-B6H=-182有借位,CF=111000000-000010101011011000001010-11000000101001010借位

结论:对无符号数进行减法运算,其结果的符号用进位来判别:CF=0(无借位)结果为正;CF=1(有借位)结果为负如:2)两个无符号数相减----被减数大于或等于减数,无借位,结果为正;被减数小于减数,有借位,结果为负。两数进行运算,结果超出表示范围会产生溢出;用OF表示3.2符号数的运算如:105+50=155>127,超出范围,产生溢出又如:-105-50=-155<-128,超出范围,产生溢出

01101001+0011001010011011=155→视为无符号数,结果正确=-65H→结果为负,错误,溢出,0F=1

10010111+11001110101100101进位=-155→将进位视为符号,结果正确=65H→结果为正,错误,溢出,0F=1说明:将多位二进制数拆成多部分运算时,数的低位部分均为无符号数,只有高位部分才为符号数注意区分进位与溢出溢出不同于补码运算中的进位或借位丢失

如:-50-5=-5511001110+11111011111001001=-00110111B=-55进位丢失结果正确,无溢出判断补码运算有无溢出的方法:

01101001+0011001010011011CY=0,

CS=1OF=0

⊕1=1,有溢出如:105+50CY=1,

CS=0

10010111+11001110101100101OF=1

⊕0=1,有溢出-105-50CY=1,

CS=1

11001110+11111011111001001OF=1⊕1=0,无溢出-50-5设符号位向进位位的进位为CY,数值部分向符号位的进位为CS,则溢出判别式为:OF=CY⊕CS

当OF=1时,有溢出;当OF=0时,无溢出1.4二进制数的逻辑运算1.逻辑非→按位求反

2.逻辑乘∧(逻辑与)→按位求“与”如:A=01100001B,B=11001011BA=10011110B,B=00110100B规则:0∧0=0,0∧1=0,1∧0=0,1∧1=1如:01100001B∧11001011B=01000001B

3.逻辑加∨(逻辑或)→按位求“或”4.逻辑异或⊕(按位加)→按位求模2和规则:0∨0=0,0∨1=1,1∨0=1,1∨1=1

如:01100001B∨11001011B=11101011B规则:0+0=0,0+1=1,1+0=1,1+1=0

如:01100001B⊕11001011B=10101010B

5.正逻辑与负逻辑正逻辑——高电平表示逻辑1,低电平表示逻辑0负逻辑——高电平表示逻辑0,低电平表示逻辑15二进制编码计算机里,字母、各种符号以及指挥计算机执行操作的指令,均用二进制数的组合表示,称为二进制编码8421BCD编码表十进制数压缩BCD数非压缩BCD数(ABCⅡBCD数)十进制数压缩BCD数非压缩BCD数(ABCⅡBCD数)00H(0000B)00H(00000000B)55H(0101B)05H(00000101B)11H(0001B)01H(00000001B)66H(0110B)06H(00000110B)22H(0010B)02H(00000010B)77H(0111B)07H(00000111B)33H(0011B)03H(00000011B)88H(1000B)08H(00001000B)44H(0100B)04H(00000100B)99H(1001B)09H(00001001B)5.1二进制编码的十进制数用二进制表示的十进制数,简称BCD数(binarycodeddecimal),常用的是8421BCD码压缩BCD数→用8位二进制数表示2个十进制数位非压缩BCD数→用8位二进制数表示1个十进制数位如:19→压缩BCD→00011001=19H19→非压缩BCD→0000000100001001=0109H说明:①十进制数与BCD数的转换查8421BCD编码表→直接②BCD数转换为二进制数写出BCD数的十进制数→十进制数转换为二进制数③二进制数转换为BCD数二进制数转换为十进制数→根据十进制数写出BCD数ASCII码----字符在机内的表示,ASCII字符表(7位码)见下页。常用的ASCII码字符如下表:字符ASCⅡ码(H)字符ASCⅡ码(H)0~930~39$24A~Z41~5A换行LF0Aa~z61~7A回车CR0DBlank205.2ASCII码012345670NULDLESP0@P`p1SOHDC1!1AQaq2STXDC2“2BRbr3ETXDC3#3CScs4EOTDC4$4DTdt5ENQNAK%5EUeu6ACKSYN&6FVfv7BELETB‘7GWgw8BSCAN(8HXhx9HTEM)9IYiyALFSUB*:JZjzBVTESC+;K[k{CFFFS,<L\l|DCRGS-=M]m}ESORS.>N^n~FSIUS/?O_oDELHLNUL空SOH标题开始STX正文结束ETX本文结束EOT传输结束ENQ询问ACK承认BEL报警符BS退格HT横向列表LF换行VT垂直制表FF走纸控制CR回车SO移位输出SI移位输入DLE数据链换码DC1设文字备控制1DC2设备控制2DC3设备控制3DC4设备控制4NAK否定SYN空转同步ETB信息组传送结束CAN作废EM纸尽SUB减ESC换码FS分隔符GS组分隔符RS

温馨提示

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

评论

0/150

提交评论