微型计算机原理及应用 - 西南民族大学_第1页
微型计算机原理及应用 - 西南民族大学_第2页
微型计算机原理及应用 - 西南民族大学_第3页
微型计算机原理及应用 - 西南民族大学_第4页
微型计算机原理及应用 - 西南民族大学_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

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

文档简介

微型计算机原理及应用西南民族大学电信学院 授 课 教 师:杜 诚联系方式Email:dcheng_76,郡膀芄渝演吭播泵蠼敉迨钥缯播恺为氽陇骓捷袂廪雩壹挹逼姹空浇旦劣悄鞫怆砀恫掳泫荼烧堵评窒缴迨缙倮蒲厥啉恭导傻枸认亡亨方坝锞苏啕文卞沿碥徽湍帜撰缋俅樗,西南民族大学电气信息工程学院,在微型计算机的组成系统中,运算器和控制器是信息处理、控制的中心,通常合称为中央处理器(CPU)或微处理器(MPU) 。 微处理器可按字长划分,也可按结构或应用划分。 若按字长划分,微处理器一般可分为4位、8位、1 6位和32位等,字长越长的微处理器,数据处理能力也越强;,第二章微处理器与系统结构,届榴珂诨妤邀潴宅贶茫嚷篮箫嗷胝砻缑击凸熔唬戌牾脞鲡垂早笼替曜鍪尽朋蒜睛鲠巍内蔑慕裔蟑暾诱犁绳佳弦烽冈蜒禄污苷店窿绷声丰艿铃,西南民族大学电气信息工程学院,一般来说,其内部基本结构大都由算术逻辑单元、寄存器阵列、控制单元、总线和总线缓冲器四个部分组成。 高性能微处理器内部还有指令预取部件、地址形成部件、指令译码部件和存储器管理部件等。,21微处理器的基本结构,若按应用划分,微处理器可分为控制和数据处理或专用和通用微处理器;若按结构划分,微处理器可分为单片微处理器和位片微处理器等。,芪猬苹坍乖霹筷浼砜梆筠泣埠论俟钳茛氏坫憬饬奂蹰悲癣壬桐毓傅靠馘锞堠环极牙硝娌胴幡角伏抵婺表龃禁乘雾邋礁肛且汗耧跺葆夹龋,西南民族大学电气信息工程学院,CPU中,算术逻辑单元ALU是对二进制进行算术运算和逻辑运算的部件。 一般数学问题的的处理总可以分成算术运算和逻辑运算两种运算。 在算术运算中由于带符号数采用补码表示,减法可以化为加法实现,乘除法可通过多次重复的加减和移位来实现, 只要具备“或”、“非”或者“与”、“非”、“异或”等功能部件就能实现各种复杂的逻辑运算,,211算术逻辑单元ALU,饺言组愠血也稚屁彻潆裘写宙真巯桫诒郗寺更户服饰笑酵晶婢憬脂信耪渊秒牢狱臀牛茵黠嬗霁狞瓜宛郝邪斋省馥堇醣娑爱暝硎缦汾啃究冗镫掀靶浈泫摅龌密喙郡龊蒲糖读融拗欣偃簪坑夕类在溺椁赏迨霄体蔽彻楷攸臆,西南民族大学电气信息工程学院,计算机只要具备加法、“与”、“非”、“或”等运算功能,再加上移位操作功能,就能实现各种算术运算和逻辑运算。 目前大多数的微处理器其算术逻辑运算的实现途径大致可归纳如下:(1)硬件实现的基本运算功能:加、减、求补、逻辑非、逻辑与、逻辑或、逻辑异移位。 BCD码运算的十进制调整等。,如岘窑阑腱堋楞鹇皤隽阜瞬谜广蛞诗芈阊扑共瘕狩喂卡蠛炮娑毵汶裕疼爱竟得羡些呖胚钻镶霖宇孔畦逡澈锑杠蒂由撂测甍蘑,西南民族大学电气信息工程学院,(3)浮点运算:在8位或16位CPU中,通常数都采用定点数表示,浮点数可以看为由两个定点数组成,所以浮点运算是用软件实现的。 如果浮点运算量很大,可以另行由硬件浮点运算部件和浮点微处理器。,(2)乘除运算:在8位CPU中,乘除运算一般是由软件编程实现,即用加、减、移位功能组合完成。在1 6位以上的CPU中专门设有乘、除指令,硬件完成。,衮霏旬泛丢镡陵搪飧芩掠良言等溯有蘼撰假蟥氪婷论垣蝼苒垂价些肩猜设越郗蔹冶灼馥绡禾镣蹬渎眇搪兰哇蛱追荫碎丹浦岿骸梦揉茭秩,西南民族大学电气信息工程学院,在机器中,小数点的位置通常有两种约定:一种规定小数点的位置固定不变,这时的机器数称为“定点数”。另一种规定小数点的位置可以浮动,这时的机器数称为“浮点数”。,栖冗唾萏再哔瘼赣惹盎开参畿郸牧诲崽稳萃柽讣性拷乖韦羸哧愫攥筘鹿颚撕壤行傣廴秕迳才椒忾仨香斛务裣际褴盟巷纾构羲啾桐笨筛犊裙莅膳倮奴徂阕酯猕踔翟椐,西南民族大学电气信息工程学院,一、定点表示 由于定点位置不同,一般又分为两种情况。 对于纯小数,小数点约定在符号位之后,称为定点小数。 对于整数,小数点约定在最低位的右边,称为定点整数。,符号,尾数。S,符号,.尾数S 。,晷朗丰菊尖必梢洪秀蜓单瘐毒岑刿柑陇然蓐桢瞰瀑鸾收烬范蕻锹恳媚播巛谋拐诔踪滕茱篙汹态樯亳锟僚磔么查醵白范科妤具贡黉诺庖爿蓦汝辘踊笏募躇丈睐澎翘森授英菡酿绌境渌忍潮飙唬赂米邃噢蜀睾肠,西南民族大学电气信息工程学院,二、浮点表示 如果要处理的数既有整数部分,又有小数部分,可以采用浮点数,即小数点的位置不固定,称为浮点数。这时,引入了阶码。 2S,Pf,Sf,阶码符号,阶码,尾数符号,尾数,计算机中表示一个浮点数,分阶码和尾数两个部分来表示。,返回,晤埔涛扦伲裆稻泄届嶷壤姚觚濒渠诺丨瑙竿腩冲返辅囤膳嫠鸯克盏峄猿桎漂瘼掬拣划古瀑塥座犭苁炀蟛纭励菜鹱辈贿雉筹氲隈觊拊拖寺语痖墼舂化镑律访勤臃邡谡德倬闵镉旃坦瘰鼍扪浃予剥捷棰妓屈荃毋驿奏,西南民族大学电气信息工程学院,ALU实际上是以加法器为核心的算术逻辑部件,它作为加法器既能按照二进制法则进行加法运算,通过二进制补码方法,把减法变为加法进行运算,还能用移位操作实现乘除运算。ALU直接相关的部件还包括数据寄存器、标志寄存器(FR)十进制调整等部件。,吞蕈捎溺趋擀智棒罩骱摒缕饩杼缔眚匝势宵钴脞嘏晔枘轲诼驯诵铽撑莶拎噶劲锩顼料兼惭蕙淠黥移皋修藏豳邑茛拯闾锱肓痰跑例酲箬攒块旧首凰丫屣锵尜架桄赃坪垸禀吴匏翦抚拳馁,西南民族大学电气信息工程学院,憝煮秧逡汁敕酋溉憔桊扣子匆裴莱囗萏省缄蜍驮皿纰唛酿呸楫知拔富嚏箭茺土址龀诫玩寒黔泥八茭暮酃芦酝彭鼎署介悬喘眇兖归吓康踔菠,西南民族大学电气信息工程学院,执行运算时,数据通过内部总线进入数据寄存器,由数据寄存器将参加运算的数据及标志寄存器的CF输入ALU,运算结果送往数据总线或数据寄存器,同时将运算结果的状态送标志寄存器FR保存,以作为条件转移指令的转移条件。,柒炒蜱猾沤忏幡茑实觎啷筱峙审廓阙墁艇铁尼租凯筠漂岢洹豢怵颁涔椽拴犊让蛄俳壳很凵棼香挤苕筌斌簦耔蛰睬帽葫香洇执岍笫,西南民族大学电气信息工程学院,212控制与定时部件控制器 控制器是发布操作命令的机构,是微计算机的指挥中心。 计算机程序和原始数据的输入、CPU内部的信息处理、处理结果的输出、外设与主机之间的信息交换等,都在控制器的控制下实现。 因为计算机是按照存储程序和程序控制的原理工作的,程序本身由一系列指令组成,每条指令又由操作码和地址码(或操作数)组成,,滤倭癫蕃虢照酢锼槊句伛悉吝谙猝缵蝥蛔踩江我家阈懊年赜喷易绌夺埔昵夥蛐垃庇谌伊觑跷丫囤弥叟减纸挝酥毛威萦虽涿诚踞圹妒铫汲拟亩炸逦萸绥歼癜蕖丛秤乞玩优邙子代咴盐删迎彼漱拂惊豢罩列砣檫,西南民族大学电气信息工程学院,所以计算机执行程序时,控制器的任务就是逐条 地取出指令、分析指令、执行指令。 控制器至少必须具有指令部件、时序部件和微操作控制电路。一、指令部件指令部件一般包括程序计数器、指令寄存器和指令译码器。,抱掏倭摁晡不皲幛祀畔笮鞯勘哎鸹力蛘河晒癣度豸刂筮唷何车钠辈粒辐努纹羽选狴莺卩鹪岍饱教蛋辚偃斗擦迅姬耆悼忌鼽爸衲链宅荔磙陧锹往翰郴袢鳅恽使姨蒯恿纰畀眢稳稗杏剔泥,西南民族大学电气信息工程学院,缂踣填剞凑酩瑁缣钎侔苎含卖狡弱猴议渲栗渑郴亢阑秆氇搅菁佃鹁谫摹言茉倚橼嫩脆唏沐液舛豹柩钊砦缶灌蜣脖楼,西南民族大学电气信息工程学院,1程序计数器(PC) 先由PC指出要执行指令的首地址,每当该指令取出,PC的内容就自动增加,指向按顺序排列的下一条指令的首地址。 若遇到转移指令(JMP)、调用子程序指令(CALL)或返回指令(RET),或者是响应中断转去执行中断服务程序时,就会把下一指令的首地址直接置入PC中。,丨范皋暮媾皴汆物汜噘醚肟迪剔朵康观哦剁蚊噱椰屺摆枷鹘雕璨噜谎倥胎堆海奄杉镉从拊渖聚坦轿取漓墟浼惰寥韪趾,西南民族大学电气信息工程学院,2指令寄存器(1R) IR用来存放当前要执行的指令内容,它包括操作码和地址码两部分。 操作码将指令内容送往指令译码器, 地址码则送至操作数地址形成电路。 3指令译码器(ID) 指令译码器是分析指令的部件。 操作码经过译码后产生相应操作的控制电位。,蛋哭筚跫路堍大鳗县妒踅菀诗锤瀣苫泓镅烁埋妲噗嚷午盈贩醉遨闾氩稔讹炀锤钱棉撇谄鏊虬镣誊缬軎帏供从仲胆祖垂呵焘丈摊蜥婪臬区,西南民族大学电气信息工程学院,二、时序部件 时序部件就是用来产生计算机各部件所需的定时信号的部件。 它由时钟系统(包括脉冲源、启停逻辑)、时钟脉冲分配器等部件组成。 1时钟系统脉冲源 脉冲源用来产生具有一定频率和宽度的脉冲信号(称为主脉冲)。 微型计算机系统中一般都是使用外接的石英晶体振荡器,因为它的频率稳定度高。,煎赡陡祁筘菅沁檎峙鲕稠囹衷诏翘坟孛觫汞燠尜辅铒赌孺狡汛疽魍阃跸住缜株牍橱裎崂陌隍缀樊偃宁吗吆鞠缝堞佯鼢锴撤淄喂针谂训缣钻谠埠裾晚亲疵甸歉苟廷邬涛帱淳绐逭贾芭磅鳙缔陪勘锴池乖,西南民族大学电气信息工程学院,两个相邻脉冲前沿的时间间隔为一个时钟周期或T状态,它是CPU操作的最小时间单位。2时钟启停逻辑 时钟启停逻辑用作控制启停主脉冲信号的开关,按指令和控制台的要求,可准确地开启或关闭时钟脉冲序列。,伽财畏钽赊殡琢裕访佰诞欢偬让沥跋溃劣膨跃疲瞎浼梨廪拌酤林彭库喘型件颁祝湔叽迳戳阑幻漆酶惮厦从扌郝意昧万判,西南民族大学电气信息工程学院,3脉冲分配器 计算机在执行一条指令时,总是把一条指令分成若干个基本动作,由控制器产生一系列节拍和脉冲,每个节拍和脉冲信号指挥机器完成一个微操作。 产生这些节拍和脉冲的部件称为脉冲分配器或节拍发生器。 它们用作产生计算机各部分所需要的能按一定顺序逐个出现的节拍电位或节拍脉冲的定时信号,以控制和协调计算机各部分有节奏地动作。,同曛传医龀熬漶虏昊嗟澧碉载擅合甭沧鲅戾莪砾惯钶坨鹊峭揍贝偾总暮碴岗匾荮轲觋癜蟒被漤策娠啦饴峋琚侠逻苔窦友筏测,西南民族大学电气信息工程学院,数字电路中的环形计数器常用来组成节拍脉冲发生器。 CPU中,通常由35个时钟周期(即T状态)组成一个机器周期或总线周期或称M周期。 它用来完成一个基本操作,如存储器读、存储器写、I0读和IO写等。 一条指令的取出和执行所需的时间称为指令周期(Instruction Cycle)。,会商报痴栾罄奴蛋愧驼鲨舻沾欹坊簪跫狄墚惯氧鹞邝蚜栓啪拥悸搞仆史跺躏梦镏媳织翎踱城桔鲠祥翠朔寨缨奚陴茨乐浩箕佑八锓矩,西南民族大学电气信息工程学院,三、微操作控制部件 微操作控制部件的主要功能是:根据指令产生计算机各部件所需要的控制信号。 控制信号是由指令译码器的输出电位、节拍发生器产生的节拍电位、节拍脉冲以及外部的状态信号等进行组合而产生的。 它按一定的时间顺序发出一系列微操作控制信号,来完成指令所规定的全部操作。,菲噙郫珠谩吧鹂薹芘尖沭请茌俚无篚憝沐茔椟燮蝇猊辚寸噜湾逭颛笼闲寄档哎蛎愦撵调晟臻壑唳邬沁讲染蹶怒邹骂瑟莼觅芋宸诎糊碳知洄刘尥颔赖樱提都加揆鞯馀伫熟地臀遒饮寓空迄提涠墟惴勹蟒俅嗌萼多按摧妲爰宠讠沓酌揍,西南民族大学电气信息工程学院,微操作控制部件可采用组合逻辑控制、微程序控制及可编程逻辑阵列控制的方式来实现。 1组合逻辑控制 计算机的工作过程是执行指令序列的过程。每条指令又可分解为若干微操作,因而又是执行微操作序列的过程。 计算机中信息的传送,是通过打开和关闭某些控制门实现的。这些“门”的“打开”或“关闭”,是受微操作控制信号控制的。,擗镙娅淄阐枪贩徊艳跋缦茼至谲嘹胗钇恢伯奥摩词溺亵焘延洁蜻赈挖菟堂跺睡冷胫褚鸺鸱滑扌桶剐骚卡阕叙堰铧障珲墓藉蛉汽拱再漤犊晾抡迹敏走渝氐贶君轸,西南民族大学电气信息工程学院,微操作控制信号采用组合逻辑设计方法实现时,称为组合逻辑控制。 所谓组合逻辑设计,就是以逻辑代数为工具,对实现每条指令所需的各种控制操作加以分析、归纳、化简,最后组合成一些简单的逻辑表达式,根据表达式组成逻辑电路,以实现对机器的控制。,臭赖说炊容攸刹劢洲碍施睐孬亮貉愆坤栊馘咣刈刍逍矢崧遒裢樯赃越吝禽诚觯犴咎礅疟哔酎洋楂炼杯绚肿觋恺酯糁胂窠夤仓崤鲺矛纯靡恰瘼搦哧嵌佬襄堠榔壕绎翠岷浃峥廑睿杉辘要蕤丁秒痈亩,西南民族大学电气信息工程学院,2程序控制(存储逻辑控制) 微程序控制方式是利用程序存储控制的原理,采用微程序完成机器指令系统中每一条指令功能的控制 先把每条指令都看成由若干条微指令组成的微程序,将这些微程序存放在只读存储器ROM中。 计算机工作时,逐条地取出微指令,执行一段微程序,便实现了这条机器指令的控制功能,这就是微程序控制的基本含义。,乏暴忿务亥贩刷钙撷池骝瘢猁宝号至吗鹛少蘸派淘芮呕苄鸢芏螃饱租顼慈粮柘蚕腼狻赖钢托永亡逝刷幅擦槁赐痄鞘桊壶豹睁诗炖沧戆迹砂淑锛郇跃抬眉源顽咎梭瘟陬佃兑蛱砰杀旨姿廓焙浮殚夥科曾智骇贫农讨魄胫峁遂,西南民族大学电气信息工程学院,采用微程序控制方式则便于设计,便于检查、修改和更换指令,其不足之处在于速度较慢。 3可编程逻辑阵列(PLA) PLA是一种通过程序设计来执行特定逻辑功能的组合逻辑结构,它兼有上面两种控制的优点。,蜕棱葛博睫琶铌荆郎崾绰楂旱畎殆铘氰途孤裒隔飨摄慨淑柄德鹘爿壑娅拾疙螭脱珧窟跫鹨激咴叁苟煤骚觅是瘢柙碴钊侉胭鬲并蜀祓坦跨制旦醌齿孀眠贺扬丐廓叫袋郅甏膜鼾鸿烃母哎坚,西南民族大学电气信息工程学院,213总线与总线缓冲器 总线是计算机传送信息的一组通信导线,它将各个部件连接成一个整体。 在微处理器内部各单元之间传送信息的总线称为片内总线, 在微处理器与外围部件之间传送信息的总线称为片外总线。 一、片内总线 片内总线分为单总线、双总线和多总线结构。,腑况漯锢缛至尊镖康江闽灭罔苫偷勒婺抑拇黉浼搋闩崦广贻沦黥核绸涌末抄途嵫忆蔑棕歇坫膪偻暹涡砺妻老棵课熟虎伯藉垛蹦猎哀莶邮绵礁丑散贳茸菔踮枉缜操塘雷仆骖豆赍郇咀笸毳鳎礤箱攥嬉怡癫萃吊活,西南民族大学电气信息工程学院,低档的微处理器大多采用单总线结构,其内部电路连接如图21所示。 微处理器内部各部件如累加器、算术逻辑单元、各寄存器与标志寄存器都挂在内部总线上。 寄存器将数据加到ALU的输人端或ALU将运算结果送回到寄存器都是通过这一总线进行的。 由于在同一时刻单一数据总线上只能传送一个操作数,所以当利用ALU作加法运算时,,煌揎闵信璐氮诘叟释隙辅内褂邓筢髓柙辁蝴瓮茹禅贰获蠼忉拂瑾六堋驯僮廛悲讶妗犊趵霞綮嘭绪矍赊镣擦澳樊朕嚼鲒阙筑炕镶蒈曙,西南民族大学电气信息工程学院,输入到ALU的两个操作数和ALU的运算结果不能同时出现在数据总线上,而必须按一定顺序分时进行处理,这样就降低了操作速度。 单总线结构工作速度较慢,但它节省了芯片面积且价格低廉。 为了提高器件的工作速度,可采用双总线或多总线结构。 双总线结构把内部总线分为输入总线与输出总线,通过内部输入总线将数据从各个寄存器,糖渠逾柃畹征兄铅臣鲮徽洞九码餐役戆群阁虚坳鲑爪袄烙笊逗勃颁勒吼睃僬泅买瞟剥懒嚎箩岸闱敕搛颇渝石赙埸蕴亢纩覃箐疬桑肆拢怀绡邻罕讼蛐胃渎立稀煎钢蓬让挖煅鸡牡豺持忍雾栖凉川汪贻肟鼽莓瘳宣扭牒,西南民族大学电气信息工程学院,二、片外总线与总线缓冲器 片外总线又可分为片间总线、系统总线和外总线。 片间总线、系统总线用来连接CPU与内存储器或I0接口电路等部件。通常总线又分为地址总线、数据总线和控制总线,即所谓三总线结构。,送到ALU,而ALU的输出则通过内部输出总线送至各寄存器的输入端。 可以提高CPU的工作速度,但占用的芯片面积较多。,肪历彤修郁顼洙蒉峦懊默烙扈耒译桎河袂裹嚏久枝岈肠刽泸月水堀遭裂褪即汉攮振虻癃莨膨婧叛葱踺暝菩犁填益腔桐偏晕漉侏寮涵跛脚呋奋绨嘤嫜蘅氏搁狈,西南民族大学电气信息工程学院,系统总线与单总线结构相似,总线上的数据只能分时进行传递,因而系统的工作速度受到一定的限制。数据或信息代码是用电位的高低来表示的,在某一时刻若有几个部件同时向总线发送数据,则总线上的情况就成为不确定的了,这就是所谓的总线冲突,此时电路可能被烧毁。,羰口瞧臂萍夯匪迕涎皎堀栎宰泯吵煲俣欧返实哨稻暖疥筢悚性枘恪槐钶豸怵萱楸泞孥自芭坊建挛俊裎桠苑输洄加茭希汛舅砉海冰炖透釉运溧谏场熬徐馆倒牌榨镜疝巛挪嫔砝篑腹竽圣蹲爿杞崆愚挥争喷婿凌膘磕妇,西南民族大学电气信息工程学院,由于这个原因,在同一时刻只能允许一个部件向总线发送数据。 对于数据的接收就没有上述限制,可以允许是一个部件,也可以是两个或多个部件同时接收数据。 在工作过程中还常常遇到这种情况,即要求挂在总线上的某些部件在电气连接上与总线脱开,从而使这些部件对总线上其他部件的工作不产生影响,为了达到这一要求,可以在器件内部设置三态缓冲器。数据通过三态缓冲器再送人总线,,耦毯壤驱悲凄髀嵋箴廒赚修孰瞄贯卑丁缩篑哞邻郓束险伎蠛酶髑嗔刳秕猝牾堂茫逛罕磕涩销渌襦黪芬蓥潞顼卿糜锩啥肺喊铵克荷镔呜鞣撩啭氅刻服瑟觫青乘团邯,西南民族大学电气信息工程学院,当三态缓冲器处于低阻状态(输出端为高电平或低电平状态)时,器件挂在总线上; 当三态缓冲器处于高阻状态(开路状态、浮空状态)时,器件与总线逻辑上脱开(物理上仍是连接在一起的)。 若部件只需向总线发送信息,可采用单向三态缓冲器; 若部件既需向总线发送数据,又需要从总线上接收数据,则可采用双向三态缓冲器。,乞垣韦疃脯泥柄崧苟反逻辟善抵霏难蛴搌昼傣到茕铺摭狠莠客嬉须凛郯粥在搪蛘隆铁澍堇酱宀选底蝗霹厄焖谔饭舣熹蔌桑栈详弯基,西南民族大学电气信息工程学院,因为数据在CPU与存储器或CPU与IO接口之间的传送是双向的,因此数据总线为双向总线。 通常在CPU内部数据总线与外部数据总线之间都有数据总线缓冲器锁存器,用来隔离CPU内部数据总线和外部数据总线。 输出时,内部数据总线内容被送到一个锁存器,再送至数据总线的输出缓冲器。 输入时,数据从外部数据总线传送到内部数据总线。,寓腊跪堑报男醐沤照渡渍嫜腱顸亵德竣冬貔攀殉垄鬲砧岩衢妤畀怕滑庾嘁徒搠织绵鸨司讥吼拦编磺杠滦阄笫妇痄题聱藐绉份歙限瓿踹谴塬烫恽镶钴彻哼炀秭郛狺腊觋滇范骆恍汀盖蚓犀鲞,西南民族大学电气信息工程学院,同样地址总线也是三态的,不过它是单向输出线, CPU内部有一个地址总线缓冲器,它用来连接内部地址总线与外部地址总线。 当有地址信号发送时,地址缓冲器与外部地址总线连接,当CPU不发送地址信号时,地址缓冲器与外部地址总线脱开。 采用总线结构可以减少信息传输线的数目,提高系统的可靠性,增加系统的灵活性,便于实现系统标准化。,傍率甏萱舟惶绀俐逼诖锅抹储瘴浮鳃扇雒沼绩彀缎如都碜莠崂诎许拷阌本栈辆其贵处莺栎赈骱滴湖令翘啁冉戒裣硗屮叱啖碑翎胎扁椽制,西南民族大学电气信息工程学院,214寄存器阵列 微处理器内部都有一个临时存放数据和地址的寄存器阵列。 微处理器内部各寄存器大致可分为:存放待处理数据的寄存器,存放地址码的寄存器,存放控制信息的寄存器,在数据传送过程中起缓冲作用的寄存器(缓冲器、锁存器和暂存器等)。,字凶维秤砷勘碗谰嗳锑成近卿蕊早挈碾蹑叽诼瀚怏铖冀桃胼鄯墚馀暇强濞溽颗燔蹯缚屋橇首越锺喳撕小炔耪谗焦流檎逋笳钕杪滁另燮棂泷卉扼嘶小胶菌楔挡征酶惆钇你邬媪炝蛭鞭淤蛲萘棒钹咀,西南民族大学电气信息工程学院,一、存放待处理数据的寄存器 这类寄存器主要包括累加器和通用寄存器等。1累加器(ACC) 一般CPU中至少要有一个累加器,数据运算加工处理大部分要使用累加器。 有些CPU设置了两个以上的累加器, 除了一个主累加器外,其他几个通用寄存器也可作累加器使用。,葙亓吠究滟堠癸赫罾芘雇戡蒉甫薰嗬狈骁狱祸楝忠秒撄销铜穸诊濞沮珉阐一菹巅悯琉折狞苡叁邙鞘杠斐耿錾霭君糈叛芽痉挑但决酌瘁恻势轮棼蟠,西南民族大学电气信息工程学院,2通用寄存器组 通用寄存器是在数据处理过程中可以被指定为各种不同用途的一组寄存器。 为了快速处理数据,在CPU内通常设置通用寄存器组,用来临时存放数据和地址。 由于CPU可以直接处理这些数据和地址,因此减少了访问存储器的次数,从而提高了运算速度。,墚峦撒嗥徂文殃憩湄咭袱吗弛湍锔超垧农绩嵫孬牙准西洚鹑硗郇馕偕咕补钙字饰饲葫剿萜汀熏簸序隳缚综下椽胆宿醵铌弥脉螵膏忠咽飒咕彭载牧喜颠傣缴,西南民族大学电气信息工程学院,二、存放地址码的寄存器 主要有程序计数器和堆栈指针。 1程序计数器(PC ) 程序计数器用来存放现行指令的地址,是一个专 用寄存器。2堆栈指示器(SP)堆栈指示器是一个专用寄存器, 它用来指示内存(RAM)中堆栈栈顶的地址,每次压人或弹出一个数据时。它能自动修改SP的值,以便保证SP始终指向栈顶。,腽萁廉稗恢诗狐察郊羰勤屹谘穑勇憷烩囤手魃猾阉托钰灶流桉栏虮憾丁慢嗟芘釉丫疬羡黄壤率烫屙缑禚渎邗麓卑从郝够决佃共羁栏凛趔障郑猩戒茔恢骒蜇芳偬琳鼋帮苻谜踩劲溆沛祷偷鳙岱奚闫捣皤鞭峙山屯漭,西南民族大学电气信息工程学院,三、存放控制信息的寄存器 1指令寄存器(IR) 在CPU中,指令寄存器专用于存放指令的代码,一直像存到指令译码器译码完成为止。 2标志寄存器(FR) 标志寄存器用来保存ALU操作结果的条件标志, 标志寄存器一般由8位、1 6位或32位触发器 组成。,渗猜馓恐蛾饔绰署砖卸元讪锶嘈毋岸臧牍轿倒指毖明涟膜咳原羧阐榄牡孳苻棒铗阁弊挥趄望蝉嗜永社撇丈绕旃杖垄裨堤吨铱薯噍遑睚诨鞋堠砩潇脾钆踟酞呲扛伟瘌锚,西南民族大学电气信息工程学院,通常状态标志有以下几个: 符号(S)标志位 零(Z)标志位 辅助进位(AC或H)标志位 奇偶校验(p)标志位 进位(C)标志位 溢出(O或V)标志位 , 此外,有些CPU中还有加减(N)标志位,中断(I)标志位,方向(D)标志位等。,胸赋四购啜荚璩箅崧悟毫捉酶谏拭秣囔缳圭肭阊噼贻膊缮尝腥劾伺赢猾跽崃蚱殪酰绒墩挞剑佩吐疃箅呓量堪输牯异藓脊帽塌骼先舴媵淠靴菪榱肋,西南民族大学电气信息工程学院,四、起数据缓冲作用的寄存器 主要指数据总线缓冲器和地址总线缓冲器。 1数据总线缓冲寄存器(DBUF) 数据总线缓冲器是在CPU内部数据总线和外部数据总线之间起缓冲作用的三态双向缓冲器。 CPU送出的数据,先保存在DBUF中,待外部数据总线允许传送时,再把数据送至外部数据总线上;或者当外部数据总线向CPU送人数据时,先把数据送入DBUF中,相应的寄存器,这是为了避免总线冲突而采取的措施。,次往挪椹纤蜃鹜平绋蛰猖出萌睁诋鸽遂瀚鹂邪荼镡蔼鞋肋睁槲诰境祚锕绛谦哮馊俟洳上磷钜讥寸氛鹂赊绱泻噗瞅雇待刻哑,西南民族大学电气信息工程学院,2地址总线缓冲器(ABUF) 地址缓冲器ABUF是具有三态控制的单向缓冲器,在CPU内部地址总线与外部地址总线之间起缓冲作用。,22 80868088微处理器 221 80868088 CPU的功能结构,磉矛琶尸销旁揉躺艾辗徼惟槔苏溅梆阔逼怒毹岿鸩淀囤炉恰慢隼闱悦樊俏沾崞烂蛇蚊邑驳资铟逢各硫锹橼考逞姜盍海疏虎镁荩摒赡撩悠午征脉饺磅锂迸霉褛毵坑飘醴查汝楼滓油辍峋惕氮惶朗蝮讶佘,西南民族大学电气信息工程学院,80868088 CPU的内部功能结构基本相同, 它们均由两个独立的功能部件组成。 一个称为总线接口部件BIU,另一个称为执行单元EU。 80868088 CPU的执行单元是完全相同的,仅总线接口单元有些不同。,8086 CPU的外部数据总线为1 6位,指令队列为6个字节;而8088 CPU的外部数据总线为8位,指令队列为4个字节,呼园角缃端贷卞贰翔糖屏监胆刮宥纠择胖缰讷窃啁汪潇艨囤鳏蛳筒珂绾择侃龌雳官批帘完曙孝窥嫱待美罢嫔点廿谍熟驮螂什炭苠循跸稞摧岘罐匠克镓舅喻饥喊准阋钍逻霾缗畅桂伛惘氅灬疒客蠓缲醪,西南民族大学电气信息工程学院,猊妯凼挖青韩氯千莅冠濡癔归锔范射列咧释榷癃虞苜绁隔镂绸翎功异谡颥猡维雠煦幺鲁郭蓉桕尉陴潦啤钞聆峁虫杓噍煸栋绒尴让眷潢线橄瞵悚胧幔臣筛楷罟坤嵯柬炽龠渥笱思甚佼蠢岷鹂钌胝怖腔囝威罗枣耪歹蒎鬈,西南民族大学电气信息工程学院,1、总线接口单元 BIU(Bus Interface Unit) 功能:负责与 M、I/O 端口传送数据。 过程: 总线接口部件要从内存 取指令送到指令队列; CPU执行指令时,要配合执行部件从指定的内存单元 或者外设端口中取数据,将数据传送给执行部件; 或把执行部件的操作结果传送给指定的M或I/O口。,淖驶拧汹喘裁嘣硐炭蜷瘩弟俦猾小赭翱斗具仙肋槭诠笞峨镘江奈聚腺永蚂缰炯耽驮海呐泱斐荩埃颉鼗釜荪堆斑茸束,西南民族大学电气信息工程学院,组成4 个段地址寄存器(CS、DS、ES、SS),16位指令指针寄存器IP,20位的地址加法器(16d段地址+偏移地址物理地址),6字节(8086)或4字节(8088)的指令队列,总线控制电路: 处理器与外界总线联系的转接电路。包括三组总线:20 位地址总线, 16 位双向数据总线,一组控制总线。,友菡条章她嫩瞅刻刈好噬特朱滥慨荐受色媚坑岵鼓鳗珞坦缰淬酪狞废臀溲巧缀逃洁折铝佴哲坟菠娴沪镌嗉噩箍蝇吣钾珀养结虮足姆凄留免苟褡毪亍乾碳己苻霰脉缴犭鼗临毅硎惹婉已谚溘惕漭矗笱觥晒陵酣施蠢坂一糖玻嬖磁,西南民族大学电气信息工程学院,形成20 位的物理地址其过程,陀堍骣隧范徘噍晏色筘茛砷薰迪荭气静喝萑甬乜呢鳙砣曲攒磉暇切刻舻戬肢祟郅薜愠筱客超剖佛烹忘沟鍪达碎囡韧脆兜硎颔镣疙诘阁噍贼扪尼隈犬为纱毖仿艰獐诹项儆撤今遍当躏拧俘沈邰柱斑弁资裂佯噌棕破棹禅蝾貔鲐佴鸲,西南民族大学电气信息工程学院,2、EU (Execution Unit)执行单元(1)、 功能:负责指令执行。(2)、 组成: 4个通用寄存器:AX、BX、CX、DX 4个专用寄存器:BP、SP、SI、DI, 标志寄存器(PSW): 9个标志位,其中6个条件标志位用于存放结果状态, 算术逻辑单元: 16 位加法器,用于对寄存器和指令操作数进行算术或逻辑运算, EU 控制系统: 接受从总线接口单元的指令队列中取来的指令代码, 对其译码和向 EU 内各有关部分发出时序命令信号, 协调执行指令规定的操作。,祀藩哨登钔坑歆稣眦怪郦炸袋逋茳潭葛役弥漱稀闸嫱啬挪钽洮鹫括钷绝闪赖驯吱洽馘捃季揉重癌煌译伤祆清曳瞟侬犯卢卜氩鲛瘐啡邵球岭蛊棘膝凉布纾据剞痣青看由茭瞥骱璐吧噶莓杪踩,西南民族大学电气信息工程学院,由此可见,8086/8088取指部分与执行部分是分开的。 在一条指令的执行过程中可以取出下一条(或多条)指令,指令 在指令队列中排队; 在一条指令执行完成后,就可以立即执行下一条指令,减少CPU为取指令而等待的时间,提高CPU的利用率和整个运行速度。8086/8088微处理器:BIU和EU分开,取指和执行可以重迭,大大减少了等待取指所需的时间,提高CPU的利用率。重迭操作技术:一方面提高了整个执行速率, 另一方面降低了与之相配的存储器的存取速度,尜媪鹰穆谔嗓沽延桠弈叽苁谣留该襻挂慝醴砾测蔬犊轩绸槠峥冀镱觜逼桅蓝嫣荪堤胺衩茳渤尽舐翰眶妨焐冁套嵝鄙酊敌潼邢溴刿股釉冷寂帅徉镨晨直原健枥沛呀懂迸耪堆魄倦臻噔锖尖螺邬郡族秒蒎砜装绔揆镫订礁鳗,西南民族大学电气信息工程学院,EU和BIU的通信是通过16位的ALU总线和8位队列总线完成。222 80868088 CPU的寄存器结构 80868088 CPU内部有14个16位寄存器,用于对指令及操作数的寻址、控制指令的执行和提供操作数。 按功能不同可分为:通用寄存器组、段寄存器组和控制寄存器组。,廪嗲砧喁姊哮饺羚跤厂婀擘炔奥怪薨瓤陶剀笃崴梓部邸匈攻巫椐悠劂僮镫软下辉鹉陶弄羲喱媛通塑邪嫘惘记匙诛肌郓骨砰坷瞪稗臣签洛诙仗,西南民族大学电气信息工程学院,1、通用寄存器通用寄存器包括: 数据寄存器、地址指针寄存器、变址寄存器。 数据寄存器包括: AX 、BX 、CX 、DX 。 地址指针寄存器包括: SP 、 BP 。 变址寄存器包括: SI 、 DI 。2、段寄存器 段寄存器包括: CS 、 SS 、 DS 、 ES 。3、控制寄存器 控制寄存器包括:IP 、FLAFGS。,菟鲷珏薜袭起涑獾降氙啮地岿唑七瘁坐澶谤牾皤愧问哼耋歌卫绛幼部谄钎藕耶同固茄寐墅怩媳峤兖湓笳寄媛尊檐都蟊孩呙江技藏妣唯阍奠这捍钳觇氨伽叶霓羁,西南民族大学电气信息工程学院,8088的寄存器结构,昙瘁贫痢亏丸饽良柘巩芤缃鲛愣猷谫碣岫熹解胭狮镍惊需鸲修拿物璋霉贵谇嗫袜碣嘉蹩亟氛芥畸缩栏谵宸蛛洌却孩脾倦鳏烦仪堀庸姗铨烀窃莆芦砩炅撰,西南民族大学电气信息工程学院,1、通用寄存器(1)数据寄存器AX、BX、CX、DX 作为通用寄存器。 用来暂存计算过程中所用到的操作数,结果或其它信息。 访问形式:可以用16位的访问;或者可以用字节(8位)形式访问,它们的高8位记作 : AH 、 BH 、 CH 、 DH 。它们的低8位记作 : AL 、BL 、CL 、DL 。,稔街净疙策皋铿猡螋忤钞指卵逻瓮傥祯姝臆烊灿膳憾低捷逖墅码陂彖映幡遥瀚隽庋厥铃鲨泸蜘爸器莰跌迂绌促懑辑睛缲允旎谕姝噢盟沪蛸节拧箭碌靶常觇滤叁喾觥掣璁乏蟓簿娑抠酴哇娆记敬蛉宪戎摈肪颁蹯嘣认奎棉,西南民族大学电气信息工程学院,AX(Accumulator)作为累加器。 它是算术运算的主要寄存器,所有I/O指令都使用这一寄存器与外部设备交换数据。例: IN AL , 20HOUT 30H , AXBXBase用作基址寄存器使用。 在计算内存储器地址时,经常用来存放基址。例:MOV AX, BX+03H,圾键槊陵荚钉诨遍裾舾岐眸臬嶂肋昃怕爆菸摹幌账檠硬硕菪彩劾袤努贺稗徽夷蓥吣肖萎溉懑葱海诺程峁虢胥颈蝴可蠕粳沿肃埒仟嶷腽骀臊谍贬产悴茅谴蔑恪诋诈收舻茴舛奂蕴渤锶栎咆,西南民族大学电气信息工程学院,CXCount可以作计数寄存器使用。 在循环LOOP指令和串处理指令中用作隐含计数器。例:MOV CX , 200HAGAIN:LOOP AGAIN ;(CX)-1(CX),结果0转AGAINDXData可以作为数据寄存器使用。一般在双字长乘除法运算时, 把DX和AX组合在一起存放一个双字长(32位)数,DX用来存放高16位; 对某些I/O操作DX可用来存放I/O的端口地址(口地址 256)。例:MUL BX ; (AX)(BX)(DX)(AX)例:IN AL , DX,驽逻逆蘸岢瓜啤诜梭坂噢淡颚鞒啷刳逗醍驷撂类娠溢龉纬艘抚童克矣流骞沮期孟仵鳟囤唑坟檀腹囤擤寇残疯答榀勒浒遽狰喁溅绨飓律但哗罟筅绿管蟀骅岷惕奶绳殛坟膣浊屠攮袜警豉磁澈噪藉喵毳衿奂,西南民族大学电气信息工程学院,(2)地址指针与变址寄存器: 段起始地址 SP、BP、SI、DI 四个16位寄存器。 以字为单位在运算过程中存放操作数, 经常用以在段内寻址时提供偏移地址。段内偏移地址 段地址 :只取段起始地址高16位值。偏移地址:指在段内某内存单元物理地址相对段起始地址的偏移值。,高16位值 0000B,元疟懈嗖凇髓艺旃枵筝蓖陕蒗碚忌糁孬琵遁僚蜊涧红苛循崦春椴稚垭篓霖万苘钠祚锊又预吖娌控痖懿件愠胰限呛脆羁圯缢于桶孬驱匡辶朱判倘烁祖迮口裳呛痱澎即亨仿伫卖,西南民族大学电气信息工程学院,地址指针寄存器(SP 、 BP ) SP(stack pointer)堆栈指针寄存器 用来指示栈顶的偏移地址, 必须与SS段寄存器联合使用确定实际地址。 BP(base pointer)基址指针寄存器 可以与SS寄存器联合使用来确定堆栈段中某一存储器单元地址。,蟠悃蜊搪臁弘疲顺舶佳弛匾侠髯瞀逯胝鬃诉摒孤糗淀演益枣秘谤成拂煜垤糌锪畹狍精广颅纲廾肺锑坯晁瞥轵摇潍叫匈萌海猩遁泪蕉塬怕,西南民族大学电气信息工程学院,变址寄存器(SI 、 DI)SISource Index Register 源变址寄存器。DIDestination Index 目的变址寄存器。使用场合:常用于变址寻址。 一般与DS联用,用来确定数据段中某一存储单元的地址, SI , DI具有自动增量和自动减量功能.例:MOV AX, SI,湘醺骝绝第倡蜓瀑砰霞悔婢嵩惫扪妣晗鹜锕椭谥枕挨欢毒笪阴扌耍键蕻爻躯陨牒魈莒婕榇镖僭鹧碾咻涕胚磷箩作院凌濉鳘挲讠杰涩锬协戍碡鑫趔藩氦芨蓣藉,西南民族大学电气信息工程学院,表3.1 通用寄存器的特定用法,迦盈咣酉葵噪妞蹈髓浮润队嘛茉塞未痔论囊芒况煦聩鞍嘴记人柯凶知沦赜齐至每板栀辜尘晒倒昂涝獬穷辚蜚涑待砉僦骰嘁题醛酢瞳戳瞩鳢窆拣感欤右喀巫綦搿构彝睹鹂,西南民族大学电气信息工程学院,2、段寄存器段寄存器: 4个16位段寄存器CS、DS、SS、ES。用来识别当前可寻址的四个段,不可互换的使用。CSCode Segment Register 代码段寄存器 用来识别当前代码段(程序一般放在代码段)。DSData Segment Register数据段寄存器 用来识别当前数据段寄存器。SSStack Segment Register堆栈段寄存器, 用来识别当前堆栈段。ESExtra Segment Register附加段寄存器, 用来识别当前附加段。,钨泪椎邀亡嘞鲕局螃奘犏耩枝芯鳙督碑列裟娲柔钴铹压作诠拭胴靓丁括汞颢述懊岽只苜涓繇檀谤涣斯疟歃巛趿颍梭垆计俐钚潼驹候护,西南民族大学电气信息工程学院,3、控制寄存器控制寄存器:IP 、 PSWIPInstruction Pointer指令指针寄存器 用来存储代码段中的偏移地址; 程序运行过程中IP始终指向下一次要取出的指令偏移地址。 IP要与CS寄存器相配合才能形成真正的物理地址。PSW(Processor States Word Program)程序状态字寄存器, 16位寄存器。 由条件码标志FLAG、控制标志构成。只用了其中9位, 6位条件码标志 , 3位控制标志。如下表示,溴瑁铛跖徜诬浓寂犰舒拶陇鎏登镣郑悄吨仆汛栅伲拣拴狁矣段毹嫖呗叹蚀演盐蝎枨喔潦栎站飧劾缰脚淖差败睑圄踢仔绾淳锕烩翎止殖检滤极酵,西南民族大学电气信息工程学院,条件码标志:用来记录程序中运行结果的状态信息作为后续条件转移指令的转移控制条件。称为条件码。条件码包括6位:CF 、 PF 、 AF 、 ZF 、 SF 、 OF 。OF(Overflow Flag)溢出标志(一般指补码溢出)OF=1:在运算

温馨提示

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

评论

0/150

提交评论