本教材是《計(jì)算機(jī)組成與體系結(jié)構(gòu)》(第3版) 的配套實(shí)驗(yàn)教材, 給出了TEC-XP-Ⅱ?qū)嶒?yàn)計(jì)算機(jī)系統(tǒng)的組成概述, 硬件領(lǐng)域的芯片級(jí)實(shí)驗(yàn)內(nèi)容、部件級(jí)實(shí)驗(yàn)內(nèi)容、部件組合與構(gòu)建整機(jī)系統(tǒng)實(shí)驗(yàn)內(nèi)容, 軟件領(lǐng)域給出了監(jiān)控程序使用和匯編語(yǔ)言程序設(shè)計(jì)的實(shí)驗(yàn)內(nèi)容。還包括不同層次的中斷實(shí)驗(yàn)內(nèi)容。
本書(shū)是《計(jì)算機(jī)組成與體系結(jié)構(gòu)》(第3版)的配套實(shí)驗(yàn)教材,重點(diǎn)講解教學(xué)實(shí)驗(yàn)設(shè)備和教學(xué)實(shí)驗(yàn)項(xiàng)目,還會(huì)把不宜在主教材過(guò)多涉及的部分內(nèi)容(計(jì)算機(jī)硬件系統(tǒng)的設(shè)計(jì)技術(shù)與工程實(shí)現(xiàn)方法)安排到這本書(shū)中進(jìn)行講解。本書(shū)給出了TEC-XP-Ⅱ?qū)嶒?yàn)計(jì)算機(jī)系統(tǒng)的組成概述,硬件領(lǐng)域的芯片級(jí)實(shí)驗(yàn)內(nèi)容、部件級(jí)實(shí)驗(yàn)內(nèi)容、部件組合與構(gòu)建整機(jī)系統(tǒng)實(shí)驗(yàn)內(nèi)容,軟件領(lǐng)域給出了監(jiān)控程序使用和匯編語(yǔ)言程序設(shè)計(jì)的實(shí)驗(yàn)內(nèi)容。還包括不同層次的中斷實(shí)驗(yàn)內(nèi)容。書(shū)中對(duì)實(shí)驗(yàn)計(jì)算機(jī)系統(tǒng)的組成和實(shí)現(xiàn)的實(shí)驗(yàn)功能講解清楚,實(shí)驗(yàn)的可操作性強(qiáng),既要突出原理知識(shí),又要提升實(shí)驗(yàn)技能,與主教材融會(huì)貫通,相互配合,把理論教學(xué)和實(shí)驗(yàn)教學(xué)結(jié)合好,有利于提高教學(xué)質(zhì)量。
主任: 李曉明副主任: 蔣宗禮盧先和委員: (按姓氏筆畫(huà)為序)
馬華東馬殿富王志英王曉東寧洪
劉辰孫茂松李仁發(fā)李文新楊波
吳朝輝何炎祥宋方敏張莉金海
周興社孟祥旭袁曉潔錢(qián)樂(lè)秋黃國(guó)興
曾明廖明宏秘書(shū): 張瑞慶
前言FOREWORD本書(shū)是《計(jì)算機(jī)組成與體系結(jié)構(gòu)(第3版)——基本原理、設(shè)計(jì)技術(shù)與工程實(shí)現(xiàn)》的配套教材,重點(diǎn)講解教學(xué)實(shí)驗(yàn)設(shè)備和教學(xué)實(shí)驗(yàn)項(xiàng)目,并把不宜在主教材過(guò)多涉及的部分內(nèi)容(計(jì)算機(jī)硬件系統(tǒng)的設(shè)計(jì)技術(shù)與工程實(shí)現(xiàn)方法)安排到本書(shū)中進(jìn)行講解。
教學(xué)實(shí)驗(yàn)設(shè)備TECXPⅡ計(jì)算機(jī)系統(tǒng),是TECXP+的升級(jí)版,指令系統(tǒng)典型實(shí)用,硬件組成簡(jiǎn)單清晰,軟件配置基本夠用,是計(jì)算機(jī)組成原理課程比較理想的實(shí)驗(yàn)設(shè)備。該設(shè)備實(shí)現(xiàn)的功能有所增加,但使用方式和操作界面與此前的產(chǎn)品保持良好的一致性,避免增加授課教師的工作負(fù)擔(dān),而設(shè)計(jì)技術(shù)和實(shí)現(xiàn)手段有了重大改進(jìn)升級(jí),大幅降低了學(xué)生學(xué)習(xí)和完成實(shí)驗(yàn)的難度,主要體現(xiàn)在以下10個(gè)方面。
(1) 把硬布線控制器和微程序控制器拆分開(kāi)來(lái),用兩個(gè)ABEL程序分別描述并獨(dú)立實(shí)現(xiàn),使描述控制器組成與功能的ABEL程序大為精簡(jiǎn),使學(xué)生更容易看清學(xué)懂,使兩種類(lèi)型的控制器實(shí)現(xiàn)不再相互攪和,選用哪一種控制器就把哪一種控制器的.jed文件下載到控制器芯片。
(2) 取消原來(lái)在主板上的某些電路,把它們移入控制器芯片中實(shí)現(xiàn),僅把指令寄存器IR設(shè)置在主板上。減少了所用器件數(shù)量,更重要的是確保設(shè)備主板上提供的都是核心必要電路,能更清楚地展現(xiàn)計(jì)算機(jī)功能部件及其相互連接與信息傳輸關(guān)系,有利于教師授課和學(xué)生的實(shí)驗(yàn)操作。非常明確地把設(shè)備主板上的電路區(qū)分成核心功能器件和輔助型元器件兩大類(lèi),強(qiáng)調(diào)輔助電路只是用于硬件調(diào)試,學(xué)生會(huì)用即可,不屬于計(jì)算機(jī)組成原理課的教學(xué)內(nèi)容。
(3) 把指令計(jì)數(shù)器PC從運(yùn)算器部件中移出,設(shè)置到控制器芯片中,確保讀取指令操作能夠在一個(gè)步驟中完成,使全部指令都能在2~4個(gè)步驟中完成,既易于實(shí)現(xiàn)也更為合理。
(4) 在描述CPLD芯片內(nèi)部的電路組成與實(shí)現(xiàn)功能方面,選用的是ABELHDL硬件描述語(yǔ)言,用到的只限于數(shù)字電路和邏輯設(shè)計(jì)的基本知識(shí),外加一點(diǎn)ABEL程序結(jié)構(gòu)和語(yǔ)句規(guī)則、實(shí)現(xiàn)功能的有關(guān)規(guī)定,容易學(xué)懂,方便使用;最重要的變動(dòng)是在ABEL程序中,改用真值表描述每一條指令的每一執(zhí)行步驟使用的控制信號(hào),使控制器設(shè)計(jì)中最為煩瑣的工作變成只需在真值表中直接編輯這些控制信號(hào),而不再是勞心費(fèi)力地設(shè)計(jì)每一位控制信號(hào)的邏輯方程,極大地提高了ABEL程序的可讀性,特別是在真值表的注釋部分提供了匯編語(yǔ)句名稱(chēng)、指令在這一步驟執(zhí)行的功能、標(biāo)志位維護(hù)要求等注釋信息之后,可以看清運(yùn)算器、存儲(chǔ)器、串行接口和輸入輸出設(shè)備這幾個(gè)執(zhí)行部件,在每一條的每一個(gè)執(zhí)行步驟執(zhí)行的是什么功能,以及向它們提供什么控制信號(hào)才能使其完成各自的功能,把計(jì)算機(jī)組成原理的核心內(nèi)容直觀清晰地展現(xiàn)出來(lái)。
(5) 對(duì)控制器的節(jié)拍發(fā)生器(Timing)、程序計(jì)數(shù)器(PC)、內(nèi)存的地址寄存器(AR)、運(yùn)算器的標(biāo)志位寄存器(Flag)等時(shí)序邏輯電路,在ABEL程序中是通過(guò)邏輯方程描述的,即直接使用邏輯方程語(yǔ)句描述這些電路應(yīng)該在什么條件下接收什么信息,或者在哪些時(shí)刻需要送出其輸出到哪個(gè)部件,簡(jiǎn)明嚴(yán)謹(jǐn)、直觀清楚,特別是為有關(guān)語(yǔ)句提供了較為詳細(xì)的注釋信息,在真值表的注釋部分又提供了維護(hù)和使用這些時(shí)序電路的要求之后,使讀懂和理解這些邏輯方程語(yǔ)句變得更為輕松。
(6) 在CPLD芯片內(nèi)可以實(shí)現(xiàn)一個(gè)16個(gè)字的小ROM電路,用于編輯、保存測(cè)試程序,確保在監(jiān)控程序尚不能運(yùn)行或者尚未接入內(nèi)存儲(chǔ)器的情形下,也能調(diào)試控制器或者CPU的部分指令,檢查新擴(kuò)展的指令是否正確運(yùn)行,這是一項(xiàng)頗有新意、簡(jiǎn)單有效的調(diào)試手段。
(7) 在CPLD芯片內(nèi)設(shè)置用于中斷的電路,此時(shí)可以通過(guò)關(guān)閉掉微程序控制器Am2910芯片的電源使其不運(yùn)行,騰出了它與CPLD芯片進(jìn)行連接的24個(gè)管腳,用于顯示中斷請(qǐng)求、響應(yīng)、處理過(guò)程中的有關(guān)信號(hào),更有利于學(xué)生理解中斷的運(yùn)行原理和運(yùn)行機(jī)制。
(8) 為實(shí)驗(yàn)計(jì)算機(jī)設(shè)置3種運(yùn)行方式,即正常方式(程序在內(nèi)存中)、測(cè)試方式(程序在CPLD芯片內(nèi)的ROM中)、手撥指令方式(指令來(lái)自鈕子開(kāi)關(guān)),程序既可以連續(xù)運(yùn)行,也可以單步驟運(yùn)行。可以通過(guò)設(shè)備主板上的3個(gè)功能開(kāi)關(guān)來(lái)選擇這3種運(yùn)行方式。
對(duì)這3種運(yùn)行方式中的正常方式未做贅述,測(cè)試方式更多地用于調(diào)試擴(kuò)展指令,手撥指令方式在此前的設(shè)備中也是有的,但多數(shù)人對(duì)此認(rèn)識(shí)不足,較少使用,在這一款設(shè)備中我們進(jìn)一步強(qiáng)調(diào)了它的功能,進(jìn)行了必要說(shuō)明,主要針對(duì)的還是硬件設(shè)計(jì)中的調(diào)試問(wèn)題。
(9) 在設(shè)備的主板上加入了3個(gè)40管腳的器件插座,可以方便地插接多種型號(hào)的雙列直插封裝、不同管腳數(shù)的中小規(guī)模集成電路芯片,并能夠?qū)崿F(xiàn)各器件的各個(gè)管腳之間的隨意連接,成為電子線路和邏輯設(shè)計(jì)實(shí)驗(yàn)的通用平臺(tái),給出的實(shí)驗(yàn)項(xiàng)目簡(jiǎn)單,大體對(duì)應(yīng)主教材第2章的教學(xué)內(nèi)容,對(duì)此前沒(méi)有學(xué)習(xí)過(guò)數(shù)字電路與邏輯設(shè)計(jì)課程的同學(xué)顯得尤為重要。
(10) 在設(shè)備主板上設(shè)置了6組8位的通用鈕子開(kāi)關(guān),4組8位的通用指示燈,并在計(jì)算機(jī)部件之間傳送信息的主要通路上設(shè)置了專(zhuān)用的指示燈和接線插針(孔),能夠更方便地支持手工的單個(gè)重要芯片的功能實(shí)驗(yàn),芯片之間配合關(guān)系的實(shí)驗(yàn),單個(gè)部件的功能實(shí)驗(yàn),幾個(gè)部件之間的連接和組合運(yùn)行的實(shí)驗(yàn),以及部件拆分和構(gòu)建整機(jī)系統(tǒng)的實(shí)驗(yàn),提供了其他同類(lèi)實(shí)驗(yàn)設(shè)備難以實(shí)現(xiàn)的實(shí)驗(yàn)手段。可以這樣說(shuō),計(jì)算機(jī)內(nèi)部指令的執(zhí)行步驟、數(shù)據(jù)存儲(chǔ)、信息傳送、運(yùn)算功能和執(zhí)行結(jié)果以及每個(gè)步驟用到的控制信號(hào)的狀態(tài)等都可以通過(guò)指示燈清楚地看到,在實(shí)驗(yàn)計(jì)算機(jī)系統(tǒng)內(nèi)部發(fā)生的每一點(diǎn)變化、每一項(xiàng)操作及其效果都清楚地顯示在實(shí)驗(yàn)計(jì)算機(jī)的主板上,無(wú)須通過(guò)其他手段將其采集起來(lái)并傳送到PC的屏幕上進(jìn)行顯示。
與本套教材配套的還有電子版教學(xué)課件,重點(diǎn)教學(xué)與實(shí)驗(yàn)內(nèi)容的動(dòng)畫(huà)演示。這些文件將放置在清華大學(xué)出版社的網(wǎng)站,供用戶(hù)單位隨時(shí)下載使用。
由于作者水平所限,書(shū)中可能有一些不足甚至不當(dāng)之處,歡迎讀者批評(píng)指正。
前言計(jì)算機(jī)組成與體系結(jié)構(gòu)(第3版)實(shí)驗(yàn)教程
編者2017年6月
王誠(chéng),多年在清華大學(xué)計(jì)算機(jī)系教學(xué)和科研第一線工作,出版了十余本書(shū),教學(xué)取得優(yōu)異業(yè)績(jī),科研工作也有十余項(xiàng)重要成果。在長(zhǎng)達(dá)十七、八年的教學(xué)過(guò)程中,重點(diǎn)主講“計(jì)算機(jī)組成原理”、“計(jì)算機(jī)組成與體系結(jié)構(gòu)”等課程,計(jì)算機(jī)組成原理課被評(píng)為國(guó)家、北京市、清華大學(xué)三個(gè)級(jí)別的精品課程,獲北京市高教教學(xué)成果一等獎(jiǎng)。出版多本主教材和實(shí)驗(yàn)指導(dǎo)書(shū),其中有2本被評(píng)為北京市精品教材,進(jìn)入國(guó)家“十五”和“十一五”規(guī)劃教材。開(kāi)發(fā)研制了教學(xué)硬件實(shí)驗(yàn)設(shè)備及其軟件模擬系統(tǒng),制作了教學(xué)課件,在全國(guó)有較大影響。
教學(xué)計(jì)算機(jī)主板照片1
第1章TECXPⅡ計(jì)算機(jī)硬軟件系統(tǒng)組成、構(gòu)建與工程實(shí)現(xiàn)3
1.1TECXPⅡ計(jì)算機(jī)硬、軟件系統(tǒng)的組成概述3
1.2部件拆分與整機(jī)構(gòu)建設(shè)計(jì)6
1.3控制器部件的設(shè)計(jì)技術(shù)和實(shí)現(xiàn)方法7
第2章電子線路實(shí)驗(yàn)10
2.1反相器SN74LS04和與非門(mén)SN74LS00的實(shí)驗(yàn)11
2.2譯碼器SN74LS139器件和三態(tài)門(mén)SN74LS244器件的實(shí)驗(yàn)13
2.3寄存器器件SN74LS377、SN74LS374芯片的實(shí)驗(yàn)15
2.4計(jì)數(shù)器器件SN74LS161的實(shí)驗(yàn)18
第3章芯片級(jí)實(shí)驗(yàn)19
3.1認(rèn)知主板上元器件布局和開(kāi)關(guān)、指示燈的使用方法19
3.2單獨(dú)RAM6116或ROM58C65芯片的讀寫(xiě)實(shí)驗(yàn)20
3.3單獨(dú)MACH芯片的運(yùn)算器設(shè)計(jì)實(shí)驗(yàn)23
第4章脫機(jī)的計(jì)算機(jī)部件實(shí)驗(yàn)28
4.1脫機(jī)的運(yùn)算器部件實(shí)驗(yàn)28
4.2脫機(jī)基本存儲(chǔ)器部件實(shí)驗(yàn)30
4.3脫機(jī)的串行接口讀寫(xiě)與輸入輸出實(shí)驗(yàn)(選做)33
第5章監(jiān)控程序使用和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)36
5.1使用監(jiān)控程序的實(shí)驗(yàn)36
5.2匯編程序設(shè)計(jì)實(shí)驗(yàn)38
第6章部件組合和構(gòu)建計(jì)算機(jī)整機(jī)系統(tǒng)的實(shí)驗(yàn)46
6.1硬布線控制器部件設(shè)計(jì)和構(gòu)建CPU系統(tǒng)(運(yùn)算器+控制器)實(shí)驗(yàn)46目錄計(jì)算機(jī)組成與體系結(jié)構(gòu)(第3版)實(shí)驗(yàn)教程6.2主機(jī)系統(tǒng)(CPU+內(nèi)存)的設(shè)計(jì)與實(shí)現(xiàn)實(shí)驗(yàn)51
6.3整機(jī)系統(tǒng)(CPU+內(nèi)存+串口和輸入輸出設(shè)備)的設(shè)計(jì)與實(shí)現(xiàn)實(shí)驗(yàn)51
6.4微程序控制器設(shè)計(jì)和CPU(控制器+運(yùn)算器)系統(tǒng)實(shí)現(xiàn)的實(shí)驗(yàn)(選做)53
6.5中斷功能的設(shè)計(jì)、線路實(shí)現(xiàn)和三級(jí)嵌套的中斷實(shí)驗(yàn)61
第7章FPGACPU系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)66
7.1FPGACPU系統(tǒng)概述66
7.2運(yùn)算器部件的功能、組成與設(shè)計(jì)68
7.3控制器部件的功能組成與設(shè)計(jì)72
附錄A硬件描述語(yǔ)言ABELHDL知識(shí)簡(jiǎn)單介紹80
附錄BMACH器件的編程方法和操作步驟——LC4256V器件83
附錄CMACH芯片的下載(編程)操作86
附錄DPCB板的設(shè)計(jì)與制作概述——Altium Designer軟件使用簡(jiǎn)介88
附錄EVHDL語(yǔ)言入門(mén)性知識(shí)和FPGACPU設(shè)計(jì)簡(jiǎn)介104
附錄F教學(xué)計(jì)算機(jī)指令級(jí)的軟件模擬系統(tǒng)107
附錄GBASIC語(yǔ)言程序設(shè)計(jì)114
參考文獻(xiàn)119
第5章監(jiān)控程序使用和匯編語(yǔ)言
程序設(shè)計(jì)實(shí)驗(yàn)5.1使用監(jiān)控程序的實(shí)驗(yàn)〖*2〗【實(shí)驗(yàn)?zāi)康摹? 了解教學(xué)機(jī)系統(tǒng)的指令格式、尋址方式、基本指令系統(tǒng)構(gòu)成。
了解機(jī)器語(yǔ)言、匯編語(yǔ)言的概念及其對(duì)應(yīng)關(guān)系。
學(xué)習(xí)使用教學(xué)機(jī)的監(jiān)控命令操作運(yùn)行教學(xué)機(jī)系統(tǒng)的方法和過(guò)程。
學(xué)習(xí)匯編語(yǔ)言程序設(shè)計(jì)的基礎(chǔ)知識(shí)和基本技術(shù)。
【實(shí)驗(yàn)說(shuō)明】
這項(xiàng)實(shí)驗(yàn)可以使用指令級(jí)仿真軟件tec2ksim系統(tǒng),有一臺(tái)裝了相應(yīng)軟件的PC即可,也可以在教學(xué)實(shí)驗(yàn)設(shè)備上完成,更有利于加深對(duì)真實(shí)教學(xué)計(jì)算機(jī)硬件的了解。為此需要了解教學(xué)機(jī)系統(tǒng)提供的A、U、G、D、E、R、T這7個(gè)監(jiān)控命令的格式和每個(gè)命令的功能,試著用一下,短時(shí)間即可初步了解并學(xué)會(huì)使用。
匯編語(yǔ)言程序設(shè)計(jì)則略復(fù)雜,需要了解實(shí)驗(yàn)設(shè)備提供的30條基本指令、匯編語(yǔ)句的格式和各自的功能以及指令與匯編語(yǔ)句的對(duì)應(yīng)關(guān)系。最好先從實(shí)驗(yàn)指導(dǎo)書(shū)中提供的程序例子開(kāi)始,首先學(xué)會(huì)操作方法和工作步驟;接下來(lái)再試著學(xué)習(xí)、理解每個(gè)匯編語(yǔ)句的格式和含義,初步了解匯編程序的結(jié)構(gòu)和設(shè)計(jì)方法;在有了基本知識(shí)之后,再開(kāi)始設(shè)計(jì)自己的小匯編程序,此時(shí)要解決的是把自己想完成的一項(xiàng)事情(如求整數(shù)1~20的累加和)用匯編程序計(jì)算出來(lái),還要觀察到程序的執(zhí)行過(guò)程及其運(yùn)行結(jié)果。
【學(xué)習(xí)使用監(jiān)控命令】
1. 用R命令查看寄存器內(nèi)容或修改寄存器的內(nèi)容
(1) 在命令行提示符狀態(tài)下輸入: R↙;顯示寄存器的內(nèi)容注意: 寄存器的內(nèi)容在運(yùn)行程序或執(zhí)行命令后會(huì)發(fā)生變化。計(jì)算機(jī)組成與體系結(jié)構(gòu)(第3版)實(shí)驗(yàn)教程監(jiān)控程序使用和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)第 5 章(2) 在命令行提示符狀態(tài)下輸入: R R0↙;修改寄存器R0的內(nèi)容,被修改的寄存器與所賦值之間可以無(wú)空格,也可有一個(gè)或數(shù)個(gè)空格主機(jī)顯示:寄存器原值:_在該提示符下輸入新的值0036,再用R命令顯示寄存器內(nèi)容,則R0的內(nèi)容變?yōu)?036。這里用到的數(shù)字都是十六進(jìn)制的。
2. 用D命令顯示存儲(chǔ)器內(nèi)容
在命令行提示符狀態(tài)下輸入: D 2000↙ 會(huì)顯示從2000H地址開(kāi)始的連續(xù)128個(gè)字的內(nèi)容;連續(xù)使用不帶參數(shù)的D命令,起始地址會(huì)自動(dòng)加128(即80H)。
3. 用E命令修改存儲(chǔ)器內(nèi)容
在命令行提示符狀態(tài)下輸入:E 2000↙屏幕顯示:2000地址單元的原有內(nèi)容:光標(biāo)閃爍等待輸入一個(gè)新的數(shù)值輸入 0000
依次改變地址單元2001~2005的內(nèi)容為: 1111 2222 3333 4444 5555。
注意: 用E命令連續(xù)修改內(nèi)存單元的值時(shí),每修改完一個(gè),按一下空格鍵,系統(tǒng)會(huì)自動(dòng)給出下一個(gè)內(nèi)存單元的值,等待修改;按Enter鍵則退出E命令。
4. 用D命令顯示這幾個(gè)單元的內(nèi)容D 2000↙可以看到這6個(gè)地址單元的內(nèi)容變?yōu)?00011112222333344445555。
5. 用A命令輸入一段匯編源程序
主要是向累加器賦初值并進(jìn)行運(yùn)算,執(zhí)行程序命令查看運(yùn)行結(jié)果。
(1) 在命令行提示符狀態(tài)下輸入: A 2000↙;表示該程序從2000H(內(nèi)存RAM區(qū)的起始地址)地址開(kāi)始屏幕將顯示: 2000:
輸入以下形式的程序: 2000: MVRD R0,AAAA;MVRD與R0之間要有空格,其他指令相同
2002: MVRD R1,5555;每條指令都以按Enter鍵結(jié)束輸入
2004: ADD R0,R1
2005: AND R0,R1
2006: RET;程序的最后一個(gè)語(yǔ)句,必須為RET指令
2007:(直接按Enter鍵,結(jié)束A命令輸入程序的操作過(guò)程)若輸入有誤,系統(tǒng)會(huì)給出提示并顯示出錯(cuò)地址,用戶(hù)只需在該地址重新輸入正確的指令即可。此處的數(shù)字均默認(rèn)為十六進(jìn)制。
(2) 用U命令反匯編剛輸入的程序。
在命令行提示符狀態(tài)下輸入: U 2000↙在從相應(yīng)地址開(kāi)始執(zhí)行反匯編功能,每行一條指令,包括指令地址、指令代碼、匯編語(yǔ)句等相應(yīng)幾列的信息。
注意: 連續(xù)使用不帶參數(shù)的U命令時(shí),將從上一次反匯編的最后一條語(yǔ)句之后接著繼續(xù)反匯編。
(3) 用G命令運(yùn)行前面輸入的源程序。G 2000↙程序運(yùn)行結(jié)束后,可以看到程序的最終運(yùn)行結(jié)果,屏幕將顯示各寄存器的值,其中R0和R1的值均為5555H,說(shuō)明程序運(yùn)行正確。
(4) 用P或T命令,單指令方式執(zhí)行這段程序,可以查看到每條指令的執(zhí)行結(jié)果。
在命令行提示符狀態(tài)下輸入: T 2000↙寄存器R0被賦值為AAAAH。T↙寄存器R1被賦值為5555H。T↙做加法運(yùn)算,和保存進(jìn)R0,R0的值變?yōu)镕FFFH。T↙做與運(yùn)算,結(jié)果放在R0,R0的值變?yōu)?555H。
5.2匯編程序設(shè)計(jì)實(shí)驗(yàn)
設(shè)計(jì)匯編語(yǔ)言程序之前,初步看清教學(xué)機(jī)的基本指令系統(tǒng)的構(gòu)成以及典型指令的功能、指令格式、選用的尋址方式等十分必要,還要對(duì)指令代碼和匯編語(yǔ)句的對(duì)應(yīng)關(guān)系有基本認(rèn)識(shí),這是本實(shí)驗(yàn)要重點(diǎn)學(xué)習(xí)、深入理解的內(nèi)容。首先給出教學(xué)機(jī)的基本指令匯總表(見(jiàn)表5.1)。
……