




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1.1概述图灵,英国数学家,1936年提出“图灵机”设想足够长的磁带读写磁头有限的控制部件冯.诺依曼,美籍匈牙利数学家,1946年设计并建立冯.诺依曼计算机体系1.1.1计算机的发展历史冯.诺伊曼体系结构①用二进制形式表示数据和指令;②存储程序控制:程序和数据预先存入存储器③确立了计算机系统的5大基本部件。
运算器、控制器、存储器、输入设备、输出设备1946年,“莫尔小组”
世界上第一台计算机
电子数字积分器与计算器(ENIC)字长12位、5000次/S
体积大、重量大、功耗大、昂贵计算机发展的四个时代微处理器(MPU)……..微处理器(MPU)
单片机微型计算机由单片集成电路芯片构成。CPU存储器定时器/计数器I/O接口单片机(Singlechip)微控制器(MCU)嵌入式微控制器(EMCU)1.1.3单片微型计算机发展历史MCS是Intel公司生产单片机的系列号,主要有MCS-48、MCS-51、MCS-96系列。MCS-51系列单片机包括3个基本型,分别是8031(80C31)、8051(80C51)、8751(87C51)。20世纪80年代中期以后,Intel公司以专利形式将8051技术转让给许多半导体厂家ATMEL、PHILIPS、ANALOG、DEVICE、DALLAS等,所以这些厂家生产的单片机与MCS-51系列单片机兼容。
第一阶段(1976~1978年)为低性能单片机的探索阶段。第二阶段(1978~1982年)为高性能单片机阶段。第三阶段(1982~1990年)为16位单片机阶段。第四阶段(1990年~)为微控制器的全面发展阶段。§1.2微型计算机中数制和数的表示数制是人们利用符号来记数的科学方法。1.2.1.数制
数制的数码个数称为基,数制的每一位所具有的值称为权,权实际上是以基为底的幂。十进制(D)0,1,2,3,4,5,6,7,8,9基为10二进制(B)0,1基为2十六进制(H)0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F基为16
1.十进制转换为二进制十进制整数转换二进制除2反向取余十进制小数转换二进制乘2正向取整
1.3.2.数制的转换方法用8位二进制表示53的二进制形式为:
00110101B。0.625对应的二进制数为0.1010特别指出:若小数位不是0.00,则还得继续乘下去,直至变成0.00为止,也有可能永远不会出现0.00。
2.二进制转换为十进制二进制数转换成十进制数的方法是由二进制数各位的权乘以各位的数码(0或1)再加起来就得到对应的十进制数。101011B=1×25+0×24+1×23+0×22+1×21+1×20=43D0.101B=1×2-1+0×2-2+1×2-3=0.625D
3.十进制转换为十六进制十进制整数转换十六进制除16反向取余十进制小数转换十六进制乘16正向取整53的两位十六进制形式表示为35H。1.2.3.计算机中数的表示
机器数是指用二进制表示的计算机能够直接识别的数,机器数表示数的范围取决于计算机的位数。真值是机器数对应的真实数值习惯上人们用带正负号的十进制表示。1.机器数和真值
机器数可分为无符号数和有符号数。无符号数只能表示0和正数,有符号数能表示正数、负数和0。2.机器数的分类1)无符号数
无符号数的特点是数的所有二进制位均为数值位,主要用来表示计算机中的地址值、索引值、指针等。
有符号数的特点是用二进制0、1表示符号,计算机科学中规定二进制0代表正符号,二进制1代表负符号。2)有符号数3有符号数的定点与浮点表示
计算机中的有符号数表示形式可分为定点表示和浮点表示两种。用定点表示有符号数的计算机称为定点计算机(例如MCS-51单片机),用浮点表示有符号数的计算机称为浮点计算机(例如PC机)。1).有符号数定点表示
定点表示有两种形式:纯整数形式和纯小数形式,定点机中通常采用纯整数形式,用8位二进制数表示一个纯整数,格式如下:冯.诺依曼体系计算机,用()形式表示数据和指令。程序代码二进制十进制十六进制ABCD提交单选题1分2).有符号数浮点表示对于任意一个有符号二进制数N可以表示为N=S×2P,其中S是数N的尾数,P是数N的阶码,阶码P可以根据小数点的位置取不同的数值。机器数的浮点规格化数形式,即通过改变二进制浮点数的阶码值将其尾数设为1/2≤|S|<1,即保证尾数的小数点后面的一位必须为1。
其表示格式如下:Pf表示阶码的正负,Sf表示尾数的正负。N=0.0011010B×200B规格化数形式N=0.11010B×2–10B设计算机位数为8位,且阶码和尾数位数相等,则二进制数N的机器数形式表示如下:由于计算机位数有限,尾数超出三位小数的部分自动舍去,因此用浮点法表示数有可能产生误差。4.机器数的编码形式1)原码
计算机科学中,机器数常采用三种编码形式,即原码、反码和补码。无符号数只有原码形式,而有符号数具有原码、反码和补码三种形式。
无符号数原码为十进制自然数直接转换后的二进制序列,8位无符号数原码可表示28=256个自然数,范围是0~255,16位无符号数原码可表示216=65536个自然数,范围是0~65535。
有符号数原码为十进制有理数转换后的二进制序列,其最高位表示符号位,其它位存放该数的绝对值。8位定点有符号数的原码可表示256(=28)个数,范围是-127~+127,16位定点有符号数原码表可表示65536(=216)个数,范围是-32767~+32767。需要指出,定点有符号数原码包含+0和-0,+0的8位原码为00000000B,-0的8位原码为10000000B。优点:简单直观,与真值转换容易;缺点:由于符号位问题,不便直接应用于二
进制加减运算。2)反码
有符号数原码表示数的最大问题就在于1个数加上它的相反数不等于0,反码的设计思想基于该问题提出。计算机科学中,规定正数的反码等于原码,负数的反码为其原码符号位不变,其它位按位取反。8位定点有符号数的反码可表示256(=28)个数,范围是-127~+127,16位定点有符号数反码表可表示65536(=216)个数,范围是-32767~+32767。需要指出,定点有符号数反码包含+0和-0,+0的8位反码为00000000B,-0的8位反码为11111111B。同余数3)补码[-128]补=10000000B[-32768]补=1000000000000000B
计算机科学中采用补码思想引入有符号数的补码形式,正数的补码等于它的原码,负数的补码等于反码加1。8位定点有符号数的补码可表示256(=28)个数,范围是-128~+127,16位定点有符号数补码表可表示65536(=216)个数,范围是-32768~+32767。特别指出§1.3.1微型计算机中的运算电路
计算机中的运算电路是由加法器构成的,只会做二进制加法运算。全加器真值表Si=Ai+Bi+Ci§1.3微型计算机运算电路及补码运算规则8位二进制运算电路A0A1A2A3A4A5A6A7为被加数/被减数;B0B1B2B3B4B5B6B7为加数/减数;S0S1S2S3S4S5S6S7
为和或差;C1C2C3C4C5C6C7C8为加法运算中低位向高位的进位;
SUB为加减控制信号。当执行减法指令时,SUB=1,图中各异或逻辑门均为反相逻辑门,则Si=Ai-Bi+Ci=Ai+Bi+Ci,并且FA0连同SUB的状态一起做加法运算。当执行加法运算指令时,SUB=0,图中各异或逻辑门均为同相逻辑门,对加数没有任何影响则Si=Ai+Bi+Ci;
计算机科学中将按位求反末位加1的操作称为求补运算。
图中OV是溢出标志位,运算结果有溢出时,OV=1,否则OV=0,溢出的原因是运算结果超出了计算机中数的表示范围。
图中Cy是进位(或借位)的状态标志位,做加法运算时若最高位(FA7)有进位,则Cy=1,否则Cy=0;做减法运算时若FA7位无进位,则Cy=1,否则Cy=0。Cy=C8⊕SUBOV=C7
⊕
C81.3.2微型计算机中的补码运算规则研究表明,计算机中的有符号数一律用补码的形式表示的,两个数加法运算时,应将参加运算的数化成补码形式,相加后的结果仍为补码,对于有符号数来说,符号位无须单独处理,符号位可直接参加运算,不影响最终结果。运算规则如下:1)[X]补+[Y]补=[X+Y]补2)[X]补-[Y]补=[X-Y]补3)[X-Y]补=[X]补+[-Y]补
分析规则2)和规则3)可知,只要把-Y的补码求出来,就能将减法问题转化为加法问题,这就意味着在微处理器中只需要用加法器电路就能同时解决加减运算。[-Y]补的补码实际上是[Y]补求补运算的结果,即[Y]补按位取反末位加1。该规则完全适用于无符号数。1)[X]补+[Y]补=[X+Y]补2)[X]补-[Y]补=[X-Y]补3)[X-Y]补=[X]补+[-Y]补
§1.3.3机器数补码运算规则实例解析
例23H+2AH
当作有符号数时:23H+2AH=[35]补+[42]补=[77]补=4DH,满足[X]补+[Y]补=[X+Y]补规则,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕0=0,真值为77。执行加法指令,SUB=0
当作无符号数时:23H+2AH=[35]原+[42]原=[35]补+[42]补=[77]补=4DH,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕0=0,真值为77。
例23H+2AH执行加法指令,SUB=0例
23H-D6H执行减法指令,SUB=1
当作有符号数时:23H-D6H=[35]补-[-42]补=[35]补+[42]补=[77]补=4DH,同时满足[X]补-[Y]补=[X-Y]补和
[X-Y]补=[X]补+[-Y]补规则,Cy=C8⊕SUB=0⊕1=1,OV=C8⊕C7=0⊕0=0,真值为77。基础篇第1章微型计算机原理基础知识
当作无符号数时:23H-D6H=[35]原-[214]原=[35]补+[42]补=[77]补=4DH,Cy=C8⊕SUB=0⊕1=1,OV=C8⊕C7=0⊕0=0,运算结果对应无符号数77,显然真值不合理(Cy=1),此时可对运算结果进行调整,其真值应为77-256=-179。例
23H-D6H执行减法指令,SUB=1例
23H-2AH执行减法指令,SUB=1
当作有符号数时:23H-2AH=[35]补-[42]补=[35]补+[-42]补=[-7]补=F9H,同时满足[X]补-[Y]补=[X-Y]补和[X-Y]补=[X]补+[-Y]补规则,Cy=C8⊕SUB=0⊕1=1,OV=C8⊕C7=0⊕0=0,真值为-7;
当作无符号数时:23H-2AH=[35]原-[42]原=[35]补+[-42]补=[-7]补=F9H,Cy=C8⊕SUB=0⊕1=1,OV=C8⊕C7=0⊕0=0,运算结果对应无符号数249,显然真值不合理,此时可对运算结果进行调整,其真值应为249-256=-7。例
23H-2AH执行减法指令,SUB=1例
23H+D6H执行加法指令,SUB=0
当作有符号数时:23H+D6H=[35]补+[-42]补=[-7]补=F9H,满足[X]补+[Y]补=[X+Y]补规则,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕0=0,真值为-7。基础篇第1章微型计算机原理基础知识当作无符号数时:23H+D6H=[35]原+[214]原=[35]补+[-42]补=[-7]补=F9H,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕0=0,真值为249。例
23H+D6H执行加法指令,SUB=0执行减法指令,SUB=1例
55H-4EH当作有符号数时:55H-4EH=[85]补-[78]补=[85]补+[-78]补=[7]补=07H,同时满足[X]补-[Y]补=[X-Y]补和[X-Y]补=[X]补+[-Y]补规则,Cy=C8⊕SUB=1⊕1=0,OV=C8⊕C7=1⊕1=0,真值为7。
当作无符号数时:55H-4EH=[85]原-[78]原=[85]补+[-78]补=[7]补=07H,Cy=C8⊕SUB=1⊕1=0,OV=C8⊕C7=1⊕1=0,真值为7。需要指出的是,运算过程中最高位向更高位有运算进位,但是由于借位标志Cy=0,最高位产生的运算进位会自动丢失且不影响最终结果。执行减法指令,SUB=1例
55H-4EH执行加法指令,
SUB=0例
55H+B2H
当作有符号数时:55H+B2H=[85]补+[-78]补=[7]补=07H,满足[X]补+[Y]补=[X+Y]补规则,Cy=C8⊕SUB=1⊕0=1,OV=C8⊕C7=1⊕1=0,真值为7。当作无符号数时:55H+B2H=[85]原+[178]原=[85]补+[-78]补=[7]补=07H,Cy=C8⊕SUB=1⊕0=1,OV=C8⊕C7=1⊕1=0,运算结果对应无符号数7,显然真值不合理(Cy=1),真值应为256+7=263。执行加法指令,
SUB=0例
55H+B2H例
55H+4EH执行加法指令,SUB=0
当作有符号数时:55H+4EH=[85]补+[78]补=A3H,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕1=1,正数相加出现了负数结果,不再满足[X]补+[Y]补=[X+Y]补规则,此时OV=1,即运算结果超出了正常有符号数的补码表示范围,做溢出提示即可。当作无符号数时:55H+4EH=[85]原+[78]原=[163]原=A3H,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕1=1,真值为163。例
55H+4EH执行加法指令,SUB=0
计算机执行加减指令时,机器数在运算电路中进行加法运算,有符号数采用补码形式且运算过程和运算结果满足补码运算规则(OV=1除外);无符号数相加时,运算过程和运算结果与其对应有符号数的运算过程一致,利用Cy状态确定真值,若Cy=0,运算结果就是真值,若Cy=1,则真值为运算结果加256(8位计算机);无符号数相减时,则采用求补运算规则转换为加法并用Cy状态确定真值,若Cy=0,运算结果就是真值,若Cy=1,则真值为运算结果减去256(8位计算机)。结论规
律(1)计算机不区分符号位和数值位,符号位和数值位一起参加运算。(2)运算电路在进行运算时只会根据加减指令设定加减控制信号SUB状态。当执行加法指令即X+Y时,则SUB=0,此时Y不变,运算过程是直接将X和Y相加即可得运算结果;当执行减法指令即X-Y时,则SUB=1,运算过程是X与Y求补运算后的结果相加;(3)运算电路运算的同时,会自动设置进/借位标志位Cy和溢出标志位OV的值及其它有关的标志位;(4)对运算结果进行分析时,若编程人员将X和Y看作无符号数,则通过判断Cy位的状态,确定运算过程中是否有无符号数的进/借位产生,进而进行真值合理性调整;若编程人员将X和Y看作有符号数,则通过判断OV位的状态,确定运算过程是否发生溢出,进而判断结果是否有效。
1.4.2.ASCII码编码规则
计算机编码:用规定好的二进制组合表示数据、字符、汉字等信息。1.4微型计算机中的常用编码
1.基本ASCII码:7位二进制数表示的字符编码,128个字符。96个图形字符10个十进制数字52个英文字符34个其他字符32个控制字符回车符、换行符、退格符设备控制符和信息分隔符等
1.4.1.微型计算机编码的基本概念
最高位为扩展位,最高位若为0,即基本ASCⅡ码。最高位若为1,则为扩展的ASCⅡ码,一般用来表示键盘上不可显示的功能键编码。`A`~`Z`的ASCⅡ编码是41H~5AH;`a`~`z`的ASCⅡ编码是61H~7AH;`0`~`9`的ASCⅡ编码是30H~39H。
2.扩展ASCII码:8位二进制数表示的字符编码,256个字符。常用字符的ASCII码如下:特殊字符的ASCII码可查表。
用4位二进制数表示1位十进制数,4位二进制数称为1位BCD码字,因组成它的4位二进制数码的权为8、4、2、1而得名。1.4.2.8421BCD码(十进制数的二进制编码)00000B10001B20010B30011B40100B50101B60110B70111B81000B91001BA1010BB1011BC1100BD1101BE1110BF1111B非BCD码冗余码非法码BCD码注:在0~9之间十进制数的BCD码与十六进制数的二进制表示是相同的。1.压缩型BCD码压缩型BCD码是用4位二进制表示1位十进制,用一个字节表示两位十进制数。例如,10000110B表示十进制数86,可简写为86H。2.非压缩型BCD码非压缩型BCD码是用8位表示一位十进制数。高4位总是0000B,低4位用0000B~1001B中的一种组合来表示0~9中的某一个十进制数。3.BCD码加减运算BCD码表示的是十进制数,作加法运算时须按十进制计算原则进行运算,才能使其运算结果为正确BCD码。但计算机运算电路对二进制位不作任何区分只会按照二进制规则进行相加运算。这样在相邻BCD码字之间即两位十进制数字之间只能“逢十六进位”而非“逢十进位”,进位差别会导致结果出现非BCD码或不合理结果。因此需要对结果进行调整,做到“逢十进位”。
例
BCD加法例
BCD加法BCD加法运算结果修正的规则1)如果两个对应位BCD码字相加的结果向高位无进位,且结果是BCD码,则该位不需要修正;若得到的结果是非BCD码,则该位需要加6修正。2)如果两个对应位BCD码字相加的结果向高位有进位(结果大于或等于16),则该位需要进行加6修正。BCD码的减法运算与加法运算同理,减法运算的调整原则:1)如果两个对应BCD码字相减的结果低位向高位无借位,且结果是BCD码,则该位不需要修正;若得到的结果是非BCD码,则该位需要减6修正。2)如果两个对应BCD码字相减的结果低位向高位有借位,则该位需要进行减6修正。例
BCD减法例
BCD减法变加法1.5微型计算机系统
1.5.1.微型计算机系统组成1.5.1微型计算机主机结构主机CPU存储器输入/出接口总线地址译码电路主机系统结构图
CPU地址译码电路I/O设备RAMROM地址信息片选信号I/O接口DBABCB1.CPU(中央处理器)计算机的核心部件,主要由运算器、控制器和寄存器构成运算器(ALU)主要负责算术运算和逻辑运算控制器由指令寄存器、指令译码器和控制电路组成并按指令的要
求对微机各部件发出相应的信息。寄存器CPU内部用来暂时存放数据和运算结果的空间,CPU对寄
存器读写方便快捷2.存储器(Memory)
例如01001101B用于“记忆”信息的存储元件,一般采用集成度高,容量大,体积小,功耗低的半导体芯片。字节(Byte)
基本单位,规定
8位二进制数称为1个字节。
1个字节数据的存储空间称为1个存储单元,其中每1位称为1bit。
计算机的存储器是由许多存储单元集合而成,每1个存储单元唯一的对应1个单元地址,也称为存储器的物理地址,计算机中的地址一般都用十六进制数表示,如00006H。(00006H)=CFH存储单元读/输入写/输出取数存数CPU执行访问内存的指令时,按指定的单元地址对相应存储单元进行“读、写”操作。3.总线(Bus)
(1)数据总线DB:双向传输数据信息。
传送信息的公共导线根据所传送信息的内容与作用不同可分为数据总线DB(DataBus)、地址总线AB(AddressBus)、控制总线CB(ControlBus)DB宽度(根数)与MPU提供的数据线的引脚数有关。(2)控制总线CB:传送各种控制信号和状态信号对于每一根来说信
号是单向传送的。(3)地址总线AB:CPU执行指令时,用于单向传送地址信息。地址信息操作数在数据存储器中的地址信息指令代码在程序存储器中的地址信息AB的宽度决定了计算机系统的最大寻址能力最大寻址空间=2N,其中N为AB的宽度。MCS-51单片机N=16最大寻址空间=216=65536B=64KB8086/8088CPUN=20最大寻址空间220=1MB例.4.地址译码电路
凡是“挂”在总线上部件都
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 60335-2-119:2021/AMD1:2025 EN-FR Amendment 1 - Household and similar electrical appliances - Safety - Part 2-119: Particular requirements for commercial vacuum packaging
- 咨询委托服务合同
- 个体餐饮劳动合同
- 智慧校园建设与数字化管理合作协议
- 福建合同本施工合同
- 浴场承包合同协议书
- 智能物流系统开发及实施合同
- 文艺活动策划与执行免责协议书
- 人力资源行业人力资源信息化管理系统建设方案
- 合同人企业章程范本
- 工行安心账户托管(交易资金)三方协议
- 第1课+古代亚非【中职专用】《世界历史》(高教版2023基础模块)
- 赵尚志爱国主义教育班会
- 产品生产技术方案
- 《陶瓷模型制作》课程标准
- 异位妊娠的临床表现医学课件
- 《卖火柴的小女孩》的语文说课课件
- 经济数学基础(高职)全套教学课件
- 员工工作失误给公司造成损失赔偿的制度
- 石材幕墙维修方案
- 人工智能导论-课件 第1章 人工智能的前世今生
评论
0/150
提交评论