版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)一 基礎(chǔ)匯編語言程序設(shè)計(jì)1 學(xué)習(xí)和了解 TEC-2000 十六位機(jī)監(jiān)控命令的用法;2 學(xué)習(xí)和了解 TEC-2000 十六位機(jī)的指令系統(tǒng);3 學(xué)習(xí)簡(jiǎn)單的 TEC-2000 十六位機(jī)匯編程序設(shè)計(jì);實(shí)驗(yàn)內(nèi)容:1 使用監(jiān)控程序的 R 命令顯示/修改寄存器內(nèi)容、D 命令顯示存儲(chǔ)器內(nèi)容、E 命令修改存儲(chǔ)器內(nèi)容;2 使用 A 命令寫一小段匯編程序,U 命令反匯編剛輸入的程序,用 G 命令連續(xù)運(yùn)行該程序,用 T、P 命令單步運(yùn)行并觀察程序單步執(zhí)行情況;實(shí)驗(yàn)要求:在使用該教學(xué)機(jī)之前,應(yīng)先熟悉教學(xué)機(jī)的各個(gè)組成部分,及其使用方法。實(shí)驗(yàn)步驟:1 關(guān)閉電源,將大板上的 COM1 口與 PC 機(jī)的串口相連;2 接通電
2、源,在 PC 機(jī)上運(yùn)行 PCEC.EXE 文件,設(shè)置所用 PC 機(jī)的串口為“1”或“2”,其它的設(shè)置一般不用改動(dòng),直接回車即可;3 置控制開關(guān)為 00101(連續(xù)、內(nèi)存讀指令、組合邏輯、16 位、聯(lián)機(jī)),開關(guān)撥向上方表示“1”,撥向下方表示“0”,“X”表示任意。其它實(shí)驗(yàn)相同;4 按一下“RESET”按鍵,再按一下“START”按鍵,主機(jī)上顯示:TEC-2000 CRT MONITORVersion 1.0 April 2001Computer Architectur Lab., Tsinghua UniversityProgrammed by He Jia5 用 R 命令查看寄存器內(nèi)容或修改
3、寄存器的內(nèi)容1)在命令行提示符狀態(tài)下輸入:R;顯示寄存器的內(nèi)容注:寄存器的內(nèi)容在運(yùn)行程序或執(zhí)行命令后會(huì)發(fā)生變化。2)在命令行提示符狀態(tài)下輸入:R R0;修改寄存器 R0 的內(nèi)容,被修改的寄存器與所賦值之間可以無空格,也可有一個(gè)或數(shù)個(gè)空格主機(jī)顯示:寄存器原值:_在該提示符下輸入新的值 0036實(shí)驗(yàn)?zāi)康模涸儆?R 命令顯示寄存器內(nèi)容,則 R0 的內(nèi)容變?yōu)?0036。6 用 D 命令顯示存儲(chǔ)器內(nèi)容在命令行提示符狀態(tài)下輸入:D 2000會(huì)顯示從 2000H 地址開始的連續(xù) 128 個(gè)字的內(nèi)容;連續(xù)使用不帶參數(shù)的 D 命令,起始地址會(huì)自動(dòng)加 128(即 80H)。7用 E 命令修改存儲(chǔ)器內(nèi)容在命令行提示
4、符狀態(tài)下輸入:E 2000屏幕顯示:2000地址單元的原有內(nèi)容:光標(biāo)閃爍等待輸入輸入 0000依次改變地址單元 20012005 的內(nèi)容為:1111 2222 3333 4444 5555注意:用 E 命令連續(xù)修改內(nèi)存單元的值時(shí),每修改完一個(gè),按一下空格鍵,系統(tǒng)會(huì)自動(dòng)給出下一個(gè)內(nèi)存單元的值,等待修改;按回車鍵則退出 E 命令。用 D 命令顯示這幾個(gè)單元的內(nèi)容D 2000可以看到這六個(gè)地址單元的內(nèi)容變?yōu)?0000 1111 2222 3333 4444 5555。8用 A 命令鍵入一段匯編源程序,主要是向累加器送入數(shù)據(jù)和進(jìn)行運(yùn)算,執(zhí)行觀察運(yùn)行結(jié)果。1) 在命令行提示符狀態(tài)下輸入:A 2000 ;
5、表示該程序從 2000H(內(nèi)存 RAM 區(qū)的起始地址)地址開始屏幕將顯示:2000:輸入如下形式的程序:2000: MVRD R0,AAAA ;MVRD 與 R0 之間有且只有一個(gè)空格,其他指令相同2002: MVRD R1,55552004: ADD R0,R12005: AND R0,R12006: RET;程序的最后一個(gè)語句,必須為 RET 指令正2007:(直接敲回車鍵,結(jié)束 A 命令輸入程序的操作過程)若輸入有誤,系統(tǒng)會(huì)給出提示并顯示出錯(cuò)地址,用戶只需在該地址重新輸入確的指令即可。2) 用 U 命令反匯編剛輸入的程序在命令行提示符狀態(tài)下輸入:U 2000在相應(yīng)的地址會(huì)得到輸入的指令及
6、其操作碼注:連續(xù)使用不帶參數(shù)的 U 命令時(shí),將接著從上一次反匯編的最后一條語句之后繼續(xù)反匯編。3) 用 G 命令運(yùn)行前面剛鍵入源程序G 2000程序并程序運(yùn)行結(jié)束后,可以看到程序的運(yùn)行結(jié)果,屏幕顯示各寄存器的值,其中 R0 和 R1的值均為 5555H,說明程序運(yùn)行正確。4) 用 P 或 T 命令,單步執(zhí)行這段程序,觀察指令執(zhí)行結(jié)果在命令行提示符狀態(tài)下輸入:T 2000寄存器 R0 被賦值為 AAAAHT寄存器 R1 被賦值為 5555HT做加法運(yùn)算,和放在 R0,R0 的值變?yōu)?FFFFHT做與運(yùn)算,結(jié)果放在 R0,R0 的值變?yōu)?5555H用 P 命令執(zhí)行過程同上。注:T 總是執(zhí)行單條指令
7、,但執(zhí)行 P 命令時(shí),則把每一個(gè) CALL 語句連同被調(diào)用的子程序一次執(zhí)行完成。T、P 命令每次執(zhí)行后均顯示所有通用寄存器及狀態(tài)寄存器的內(nèi)容,并反匯編出下一條將要執(zhí)行的指令。9 舉例編寫匯編程序, 用“A”命令輸入,運(yùn)行并觀察結(jié)果1) 例子 1:設(shè)計(jì)一個(gè)小程序, 從鍵盤上接收一個(gè)字符并在屏幕上輸出顯示該字符。 在命令行提示符狀態(tài)下輸入:A 2000 ;屏幕將顯示:2000:輸入如下形式的程序:2000: IN 812001:SHR R02002:SHR R02003:JRNC 20002004:IN 802005: OUT 802006: RET2007:的地址為 81。 用“G”命令運(yùn)行程序
8、在命令行提示符狀態(tài)下輸入:G 2000執(zhí)行上面輸入的程序光標(biāo)閃爍等待輸入,用戶從鍵盤鍵入字符后,屏幕會(huì)顯示該字符。;未輸入完則循環(huán)測(cè)試;接收該字符;在屏幕上輸出顯示字符6;每個(gè)用戶程序都必須用 RET 指令結(jié)束;(按回車鍵即結(jié)束輸入過程);判鍵盤上是否按了一個(gè)鍵;即串行口是否有了輸入的字符注:在十六位機(jī)中,基本 I/O 接口的地址是確定的,數(shù)據(jù)口的的值為 80,狀態(tài)口該例建立了一個(gè)從主存 2000H 地址開始的小程序。在這種方式下, 所有的數(shù)字都約定使用 16 進(jìn)制數(shù),故數(shù)字后不用跟字符 H。每個(gè)用戶程序的最后一個(gè)語句一定為RET 匯編語句。因?yàn)楸O(jiān)控程序是選用類似子程序調(diào)用方式使實(shí)驗(yàn)者的程序投
9、入運(yùn)行的,用戶程序只有用 RET 語句結(jié)束, 才能保證程序運(yùn)行結(jié)束時(shí)能正確返回到監(jiān)控程序的斷點(diǎn), 保證監(jiān)控程序能繼續(xù)控制教學(xué)機(jī)的運(yùn)行過程。2) 例 2:設(shè)計(jì)一個(gè)小程序, 用次數(shù)控制在終端屏幕上輸出0到9十個(gè)數(shù)字符。 在命令行提示符狀態(tài)下輸入:A 2020屏幕將顯示:2020:從地址 2020H 開始輸入下列程序:2020:MVRD R2,00OA ;送入輸出字符個(gè)數(shù)2022:MVRD R0,0030 ;“0”字符的 ASCII 碼送寄存器 R02024:OUT 802025:DEC R22026:JRZ 202E2027:PUSH R02028:IN812029:SHR R0202A:JRNC
10、 2028202B:POP R0202C:INC R0202D:JR202E:RET202F:該程序的執(zhí)行碼放在 2020H 起始的連續(xù)內(nèi)存區(qū)中。若送入源碼的過程中有錯(cuò), 系統(tǒng)會(huì)進(jìn)行提示, 等待重新輸入正確匯編語句。在輸入過程中, 在應(yīng)輸入語句的位置直接打回車則結(jié)束輸入過程。 用“G”命令運(yùn)行程序在命令行提示符狀態(tài)下輸入:G 2020執(zhí)行結(jié)果為:0123456789思考題: 當(dāng)把 IN 01, SHR R0, JNC 2029 三個(gè)語句換成 4 個(gè) MOV R0,R0 語句,該程序執(zhí)行過程會(huì)出現(xiàn)什么現(xiàn)象? 試分析并實(shí)際執(zhí)行一次。提示:該程序改變這三條語句后,若用 T 命令單條執(zhí)行,會(huì)依次顯示
11、09 十個(gè)數(shù)字。若用 G 命令運(yùn)行程序,程序執(zhí)行速度快,端口輸出速度慢,這樣就會(huì)跳躍輸出。在命令行提示符狀態(tài)下輸 G 2020,屏幕顯示 09。類似的, 若要求在終端屏幕上輸出A到Z共 26 個(gè)英文字母,應(yīng)如何修改例 1中給出的程序? 請(qǐng)驗(yàn)證之。2024;輸出保存在 R0 低位字節(jié)的字符;輸出字符個(gè)數(shù)減 1;判 10 個(gè)字符輸出完否,已完,則轉(zhuǎn)到程序結(jié)束處;未完,保存 R0 的值到堆棧中;查詢接口狀態(tài),判字符串行輸出完成否,;未完成, 則循環(huán)等待;已完成, 準(zhǔn)備輸出下一字符并從堆?;謴?fù) R0 的值;得到下一個(gè)要輸出的字符;轉(zhuǎn)去輸出字符參考答案:在命令行提示符狀態(tài)下輸入:A 2100屏幕將顯示:
12、2100:從地址 2100H 開始輸入下列程序:(2100) MVRD R2,001AMVRD R0,0041(2104) OUT 80DEC R2JRZ210EPUSH R0(2108)IN 81SHR R0JRNC 2108POP R0INC R0JR 2104(210E)RET用 G 命令執(zhí)行該程序,屏幕上顯示“A”“Z”26 個(gè)英文字母.例子 3: 從鍵盤上連續(xù)打入多個(gè)屬于0到9的數(shù)字符并在屏幕上顯示, 遇非數(shù)字符結(jié)束輸入過程。 在命令行提示符狀態(tài)下輸入:A 2040屏幕將顯示:2040:從地址 2040H 開始輸入下列程序:(2040)MVRDMVRD(2044) INSHRSHRJ
13、RNCINANDCMPJRNCCMPJRNCOUTR2,81R0R0204480R0,R1R0,2053R3, R0205380R2; 沒有輸入則循環(huán)測(cè)試; 輸入字符到 R0;清零 R0 的高位字節(jié)內(nèi)容; 判輸入字符字符0否; 為否, 則轉(zhuǎn)到程序結(jié)束處; 判輸入字符字符9否; 為否, 則轉(zhuǎn)到程序結(jié)束處; 輸出剛輸入的數(shù)字符0030; 用于判數(shù)字符的下界值; 用于判數(shù)字符的上界值; 判鍵盤上是否按了一個(gè)鍵,; 即串行口是否有了輸入的字符R3, 0039;未完成, 則循環(huán)等待;已完成, 準(zhǔn)備輸出下一字符,從堆?;謴?fù) R0 的值;得到下一個(gè)要輸出的字符;轉(zhuǎn)去輸出字符;循環(huán)次數(shù)為 26;字符“A”的值
14、;輸出保存在 R0 低位字節(jié)的字符;輸出字符個(gè)數(shù)減 1;判 26 個(gè)字符輸出完否,已完,則轉(zhuǎn)移到程序結(jié)束處;未完,保存 R0 的值到堆棧中;查詢接口狀態(tài),判字符串行輸出完成否MVRD R1,00FFJMPA 2044(2053) RET; 轉(zhuǎn)去程序前邊 2044 處等待輸入下一個(gè)字符在命令行提示符狀態(tài)下輸入:G 2040光標(biāo)閃爍等待鍵盤輸入,若輸入 0-9 十個(gè)數(shù)字符,則在屏幕上回顯;若輸入非數(shù)字符,則屏幕不再顯示該字符,出現(xiàn)命令提示符,等待新命令。思考題, 本程序中為什么不必判別串行口輸出完成否? 設(shè)計(jì)打入AZ和09的程序, 遇其它字符結(jié)束輸入過程。例子 4: 計(jì)算 1 到 10 的累加和。
15、 在命令行提示符狀態(tài)下輸入:A 2060屏幕將顯示:2060:從地址 2060H 開始輸入下列程序:(2060)MVRDMVRDMVRD(2066) INCADDCMPJRNZRET 在命令行提示符狀態(tài)下輸入:G 2060運(yùn)行過后, 可以用 R 命令觀察累加器的內(nèi)容。R1 的內(nèi)容為累加和。結(jié)果為:R1=0037 R2=00OA R3=00OAR1,R2,R3,R3R1,R3,2066R3R2000000OA0000; 得到下一個(gè)參加累加的數(shù); 累加計(jì)算; 判是否累加完; 未完, 開始下一輪累加; 置累加和的初值為 0; 最大的加數(shù)例子5: 設(shè)計(jì)一個(gè)有讀寫內(nèi)存和子程序調(diào)用指令的程序,功能是讀出
16、內(nèi) 存 中 的字符,將其顯示到顯示器的屏幕上,轉(zhuǎn)換為小寫字母后再寫回存儲(chǔ)器原存儲(chǔ)區(qū)域。 將被顯示的 6 個(gè)字符AF送入到內(nèi)存 20F0H 開始的存儲(chǔ)區(qū)域中。在命令行提示符狀態(tài)下輸入:E 20F0屏幕將顯示:20F020F0內(nèi)存單元原值:內(nèi)存原值:0041 內(nèi)存原值:0042內(nèi)存原值:0044 內(nèi)存原值:0045內(nèi)存原值:0043內(nèi)存原值:0046按下列格式輸入:在命令行提示符狀態(tài)下輸入:從地址 2080H 開始輸入下列程序:(2080)MVRD(2084)LDRRR3, 0006R0,R2;指定被讀數(shù)據(jù)的個(gè)數(shù);指定被讀、寫數(shù)據(jù)內(nèi)存區(qū)首地址;讀內(nèi)存中的一個(gè)字符到 R0 寄存器;指定子程序地址為
17、2100;調(diào)用子程序,完成顯示、轉(zhuǎn)換并寫回的功能;檢查輸出的字符個(gè)數(shù);完成輸出則結(jié)束程序的執(zhí)行過程;未完成,修改內(nèi)存地址;轉(zhuǎn)移到程序的 2086 處,循環(huán)執(zhí)行規(guī)定的處理MVRD R2, 20F0MVRD R8, 2100CALR R8DECJRZINCJR(208C)RET從地址 2100H 開始輸入下列程序:(2100)OUTADD80R0,R1;輸出保存在 R0 寄存器中的字符;將保存在 R0 中的大寫字母轉(zhuǎn)換為小寫字母;寫 R0 中的字符到內(nèi)存,地址同 LOD 所用的地址;測(cè)試串行接口是否完成輸出過程;未完成輸出過程則循環(huán)測(cè)試;結(jié)束子程序執(zhí)行過程,返回主程序MVRD R1,0020STR
18、R R2,R0(2105)IN 81SHRRETG 2080屏幕顯示運(yùn)行結(jié)果為:ABCDEF 在命令行提示符狀態(tài)下輸入:D 20F020F0H20F5H 內(nèi)存單元的內(nèi)容為:0061 0062 00630064 0065 0066R0JRNC 2105R3208CR22084 在命令行提示符狀態(tài)下輸入:上述例子, 都是用監(jiān)控程序的 A 命令完成輸入源匯編程序的。在涉及到匯編語句標(biāo)號(hào)的地方,不能用符號(hào)表示, 只能在指令中使用絕對(duì)地址。使用內(nèi)存中的數(shù)據(jù), 也由程序員給出數(shù)據(jù)在內(nèi)存中的絕對(duì)地址。顯而易見, 對(duì)這樣的極短小程序矛盾并不突出, 但很容易想到,對(duì)很大的程序, 一定會(huì)有較大的困難。在用 A 命
19、令輸入?yún)R編源語句的過程中, 有一定用機(jī)經(jīng)驗(yàn)的人, 常常抱怨 A 命令中未提供適當(dāng)?shù)木庉嫻δ? 這并不是設(shè)計(jì)者的疏漏, 因?yàn)槲覀儾⒉粶?zhǔn)備在這種操作方式下支持設(shè)計(jì)較長(zhǎng)的程序, 這種工作應(yīng)轉(zhuǎn)到提供了交叉匯編程序的 PC 機(jī)上去完成。相反的情況是, 輸入上述一些小程序, 用監(jiān)控程序的 A 命令完成, 往往比用交叉匯編完成更簡(jiǎn)捷。實(shí)驗(yàn)二 存儲(chǔ)器部件教學(xué)實(shí)驗(yàn)實(shí)驗(yàn)?zāi)康模和ㄟ^看懂教學(xué)計(jì)算機(jī)中已經(jīng)使用的幾個(gè)存儲(chǔ)器芯片的邏輯連接關(guān)系和用于完成存儲(chǔ)器容量擴(kuò)展的幾個(gè)存儲(chǔ)器芯片的布線安排,在教學(xué)計(jì)算機(jī)上設(shè)計(jì)、實(shí)現(xiàn)并調(diào)試出存儲(chǔ)器容量擴(kuò)展的實(shí)驗(yàn)內(nèi)容。其最終要達(dá)到的目的是:1. 深入理解計(jì)算機(jī)內(nèi)存儲(chǔ)器的功能、組成知識(shí);2.
20、深入地學(xué)懂靜態(tài)存儲(chǔ)器芯片的讀寫原理和用他們組成教學(xué)計(jì)算機(jī)存儲(chǔ)器系統(tǒng)的方法(即字、位擴(kuò)展技術(shù)),控制其運(yùn)行的方式;3. 思考并對(duì)比靜態(tài)和動(dòng)態(tài)存儲(chǔ)器芯片在特性和使用場(chǎng)合等方面的同異之處。實(shí)驗(yàn)說明:教學(xué)計(jì)算機(jī)存儲(chǔ)器系統(tǒng)由 ROM 和RAM 兩個(gè)存儲(chǔ)區(qū)組成,分別用EPROM 芯片(或EEPROM 芯片)和RAM 芯片構(gòu)成。TEC-2000 教學(xué)計(jì)算機(jī)中還安排了另外幾個(gè)存儲(chǔ)器器件插座,可以插上相應(yīng)存儲(chǔ)器芯片以完成存儲(chǔ)器容量擴(kuò)展的教學(xué)實(shí)驗(yàn),為此必須比較清楚地了解:1. TEC-2000 教學(xué)機(jī)的存儲(chǔ)器系統(tǒng)的總體組成及其連接關(guān)系;2. TEC-2000 教學(xué)機(jī)的有關(guān)存儲(chǔ)器芯片、I/O 接口芯片的片選控制和讀
21、寫命令的給出和具體使用辦法;3. RAM和EPROM、EEPROM 存儲(chǔ)器芯片在讀寫控制、寫入時(shí)間等方面的同異之處,并正確建立連線關(guān)系和在程序中完成正確讀寫過程;4. 如何在TEC-2000 教學(xué)機(jī)中使用擴(kuò)展的存儲(chǔ)器空間并檢查其運(yùn)行的正確性。實(shí)驗(yàn)內(nèi)容:1. 要完成存儲(chǔ)器容量擴(kuò)展的教學(xué)實(shí)驗(yàn),需為擴(kuò)展存儲(chǔ)器選擇一個(gè)地址,即將擴(kuò)展存儲(chǔ)器的片選(標(biāo)有/CS 的2 個(gè)插孔的上面一個(gè))與標(biāo)有MEM /CS 的插孔中的一個(gè)相連;2. 用監(jiān)控程序的 D、E 命令對(duì)存儲(chǔ)器進(jìn)行讀寫,比較RAM(6116)、EEPROM(28 系列芯片)EPROM(27 系列芯片)在讀寫上的異同;3. 用監(jiān)控程序的 A 命令編寫一
22、段程序,對(duì)RAM(6116)進(jìn)行讀寫,用D 命令查看結(jié)果是否正確;4. 用監(jiān)控程序的 A 命令編寫一段程序,對(duì)擴(kuò)展存儲(chǔ)器EEPROM(28 系列芯片)進(jìn)行讀寫,用D命令查看結(jié)果是否正確;如不正確,分析原因,改寫程序,重新運(yùn)行;實(shí)驗(yàn)要求:1. 實(shí)驗(yàn)之前,應(yīng)認(rèn)真預(yù)先準(zhǔn)備,寫出實(shí)驗(yàn)步驟和具體設(shè)計(jì)內(nèi)容,否則實(shí)驗(yàn)效率會(huì)特別低,一次實(shí)驗(yàn)時(shí)間根本無法完成實(shí)驗(yàn)任務(wù),即使基本做對(duì)了,也很難說學(xué)懂了些什么重要教學(xué)內(nèi)容;2. 實(shí)驗(yàn)過程中,應(yīng)認(rèn)真進(jìn)行實(shí)驗(yàn)操作,既不要因?yàn)榇中脑斐啥搪返仁鹿识鴵p壞設(shè)備,又要仔細(xì)思考實(shí)驗(yàn)有關(guān)內(nèi)容,提高學(xué)習(xí)的主動(dòng)性和創(chuàng)造性,把自己想不太明白的問題通過實(shí)驗(yàn)理解清楚,爭(zhēng)取最好的實(shí)驗(yàn)效果,力求達(dá)到
23、教學(xué)實(shí)驗(yàn)的主要目的;3. 實(shí)驗(yàn)之后,應(yīng)認(rèn)真思考總結(jié),寫出實(shí)驗(yàn)報(bào)告,包括實(shí)驗(yàn)步驟和具體實(shí)驗(yàn)結(jié)果,遇到的主要問題和分析與解決問題的思路。實(shí)驗(yàn)報(bào)告中,還應(yīng)寫出自己的學(xué)習(xí)心得和切身體會(huì),也可以對(duì)教學(xué)實(shí)驗(yàn)提出新的建議等。實(shí)驗(yàn)報(bào)告要交給教師評(píng)閱并給出實(shí)驗(yàn)成績(jī)。實(shí)驗(yàn)步驟:1 將 RAML(6116)右邊的兩個(gè)圓孔針用導(dǎo)線連接起來.2 RAM(6116)支持即時(shí)讀寫,可直接用A、E 命令向擴(kuò)展的存儲(chǔ)器輸入程序或改變內(nèi)存單元的值。RAM 中的內(nèi)容在斷電后會(huì)消失,重新啟動(dòng)實(shí)驗(yàn)機(jī)后會(huì)發(fā)現(xiàn)內(nèi)存單元的值發(fā)生了改變。1用E 命令改變內(nèi)存單元的值并用D 命令觀察結(jié)果。 在命令行提示符狀態(tài)下輸入:E 2020屏幕將顯示: 2
24、020 內(nèi)存單元原值:按如下形式鍵入:2020 原值:2222 (空格)原值:3333(空格)原值:4444(空格)原值:5555 在命令行提示符狀態(tài)下輸入:D 2020屏幕將顯示從2020 內(nèi)存單元開始的值,其中2020H2023H 的值為:2222 3333 4444 5555斷電后重新啟動(dòng)教學(xué)實(shí)驗(yàn)機(jī),用D 命令觀察內(nèi)存單元20202023 的值。會(huì)發(fā)現(xiàn)原來置入到這幾個(gè)內(nèi)存單元的值已經(jīng)改變,用戶在使用RAM 時(shí),必須每次斷電重啟后都要重新輸入程序或修改內(nèi)存單元的值。2用 A 命令輸入一段程序,執(zhí)行并觀察結(jié)果。 在命令行提示符狀態(tài)下輸入:A 2000屏幕將顯示: 2000:按如下形式鍵入:2
25、000: MVRD R0,AAAA2002: MVRD R1,55552004: AND R0,R12005: RET2006: 在命令行提示符狀態(tài)下輸入:T 2000 R0 的值變?yōu)锳AAAH,其余寄存器的值不變。TR1 的值變?yōu)?555H,其余寄存器的值不變。TR0 的值變?yōu)?000H,其余寄存器的值不變。在命令行提示符狀態(tài)下輸入:G 2000運(yùn)行輸入的程序。在命令行提示符狀態(tài)下輸入:R 屏幕顯示:R0=0000 R1=5555 R2=RAM 芯片可直接用A 命令鍵入程序,但斷電會(huì)丟失,要再次調(diào)試該程序必須重新輸入,對(duì)那些較長(zhǎng)的程序或經(jīng)常用到的程序可通過交叉匯編,在上位機(jī)生成代碼文件,每次
26、加電啟動(dòng)后不用重新輸入,只需通過PCEC 將代碼文件傳送給下位機(jī)即可。3 將擴(kuò)展的高位 ROM 芯片(27 或28 系列)右側(cè)標(biāo)有/CS 的圓孔針與標(biāo)有MEM /CS 的一排圓孔針中地址為40005FFF 的一個(gè)用導(dǎo)線相連;將擴(kuò)展的低位ROM 芯片右側(cè)的兩個(gè)圓孔針用導(dǎo)線相連。這表示擴(kuò)展的ROM 的內(nèi)存地址是從4000H 開始,可用空間是4000H5FFFH,用戶可在這個(gè)范圍內(nèi)輸入程序或改變內(nèi)存單元的值。注意:每個(gè)ROM 插座的兩邊都有4 組插針,要根據(jù)選用的存儲(chǔ)器型號(hào),正確連接。4組插針依次為:標(biāo)有“VCC /MWR”3 個(gè)插針:使用27 系列的芯片時(shí),應(yīng)將上面2 個(gè)短接;使用28 系列的芯片
27、時(shí),應(yīng)將下面2 個(gè)短接。需要注意的是,監(jiān)控程序使用的28C64 芯片,為了防止對(duì)其誤擦寫,應(yīng)上面2 個(gè)短接。標(biāo)有“A11 /MWR”3 個(gè)插針:使用28C64、2764、2732 芯片時(shí),應(yīng)將上面2 個(gè)短接;使用28C16 芯片時(shí),應(yīng)將下面2 個(gè)短接。標(biāo)有“2764”2 個(gè)插針:使用2764 芯片時(shí),應(yīng)將其短接;使用28C64、28C16、2732 芯片時(shí),應(yīng)將其斷開。標(biāo)有“/MRD GND”3 個(gè)插針:使用28 系列的芯片時(shí),應(yīng)將上面2 個(gè)短接。下面以 2764A 為例,進(jìn)行擴(kuò)展EPROM 實(shí)驗(yàn)。4 EPROM 是紫外線可擦除的電可改寫的只讀存儲(chǔ)器芯片。在對(duì)EPROM 進(jìn)行重寫前必須先擦除并
28、判空,再通過編程器進(jìn)行編程。1將芯片0000001F 的內(nèi)存單元的值置成01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F2將編程好的該芯片插在擴(kuò)展芯片的高位,低位不插,按上面的提示插好插針。3用D 命令看內(nèi)存單元0000001F 的值。可以看到內(nèi)存單元的值為:01FF 02FF 03FF 04FF.1FFF。4用E 命令向芯片的內(nèi)存單元置值,再用D 命令察看,會(huì)發(fā)現(xiàn)原來的值沒有改變;用A 命令向芯片所在的地址鍵入程序,用U 命令反匯編,會(huì)發(fā)現(xiàn)地址仍然保持原來的
29、值。該實(shí)驗(yàn)說明EPROM 不能直接修改和編程,必須先擦除,再通過編程器編程。5將教學(xué)機(jī)斷電后重啟,用D 命令看內(nèi)存單元0000001F 的內(nèi)容,會(huì)發(fā)現(xiàn)數(shù)值沒變,EPROM 的內(nèi)容在斷電后會(huì)保持。下面以 AT28C64B 為例,進(jìn)行擴(kuò)展EEPROM 實(shí)驗(yàn)。5 AT28C64B 的讀操作和一般的RAM 一樣,而其寫操作,需要一定的時(shí)間,大約為1 毫秒。因此,需要編寫一延遲子程序,在對(duì)EEPROM 進(jìn)行寫操作時(shí),調(diào)用該子程序,以完成正確的讀寫。1用E 命令改變內(nèi)存單元的值并用D 命令觀察結(jié)果。 在命令行提示符狀態(tài)下輸入:E 5000屏幕將顯示: 5000 內(nèi)存單元原值:按如下形式鍵入:5000 原值
30、:2424(空格)原值:3636(空格)原值:4848(空格)原值:5050 在命令行提示符狀態(tài)下輸入:D 5000屏幕將顯示5000H507FH 內(nèi)存單元的值,從5000 開始的連續(xù)四個(gè)內(nèi)存單元的值依次為2424 3636 4848 5050。斷電后重新啟動(dòng),用D 命令察看內(nèi)存單元50005003 的值,會(huì)發(fā)現(xiàn)這幾個(gè)單元的值沒有發(fā)生改變,說明EEPROM 的內(nèi)容斷電后可保存。2AT28C64B 存儲(chǔ)器不能直接用A 命令輸入程序(建議試一試),可將編寫好的程序用編程器寫入片內(nèi);也可將程序放到RAM(6116)中,調(diào)用延時(shí)子程序,訪問AT28C64B 中_的內(nèi)存地址。下面給出的程序,在 5000
31、H500FH 單元中依次寫入數(shù)據(jù)0000H、0001H 、 . 000FH。從 2000H 單元開始輸入主程序:(2000)MVRD R0,0000MVRD R2,0010 ;R2 記錄循環(huán)次數(shù)MVRD R3,5000 ;R3 的內(nèi)容為16 位內(nèi)存地址(2006)STRR R3,R0 ;將R0 寄存器的內(nèi)容放到R3 給出的內(nèi)存單元中MVRD R10,2200 ;寄存器R10 存放子程序地址CALR R10 ;調(diào)用循環(huán)子程序INC R0 ;R0 加1INC R3 ;R3 加1DEC R2 ;R2 減1JRNZ 2008 ;R2 不為0 跳轉(zhuǎn)到2008HRET從 2200H 單元開始輸入延時(shí)子程序
32、:(2200)PUSH R3MVRD R3,F(xiàn)FFF(2203)DEC R3JRNZ 2203POP R3RET運(yùn)行主程序,在命令提示符下輸入G 2000。程序執(zhí)行結(jié)束后,在命令提示符下輸入 D 5000,可看到從5000H 開始的內(nèi)存單元的值變?yōu)?000:0000 0001 0002 0003 0004 0005 0006 0007 5008:0008 0009 000A 000B 000C 000D 000E 000F。思考:1)為何能用E 命令直接寫AT28C64B 的存儲(chǔ)單元,而A 命令則有時(shí)不正確;2)修改延時(shí)子程序,將其延時(shí)改短,可將延時(shí)子程序中R3 的內(nèi)容賦成00FF或0FFF
33、等,再看運(yùn)行結(jié)果。實(shí)驗(yàn)三 脫機(jī)運(yùn)算器實(shí)驗(yàn)實(shí)驗(yàn)?zāi)康模荷钊肓私?AM2901 運(yùn)算器的功能與具體用法,4 片AM2901 的級(jí)連方式,深化運(yùn)算器部件的組成、設(shè)計(jì)、控制與使用等諸項(xiàng)知識(shí)。實(shí)驗(yàn)說明:脫機(jī)運(yùn)算器實(shí)驗(yàn),是指讓運(yùn)算器從教學(xué)計(jì)算機(jī)整機(jī)中脫離出來,此時(shí),它的全部控制與操作均需通過兩個(gè)12 位的微型開關(guān)來完成,這就談不上執(zhí)行指令,只能通過開關(guān)、按鍵控制教學(xué)機(jī)的運(yùn)算器完成指定的運(yùn)算功能,并通過指示燈觀察運(yùn)算結(jié)果。下面先把前邊講過的、與該實(shí)驗(yàn)直接有關(guān)的結(jié)論性內(nèi)容匯總?cè)缦隆?2 位微型開關(guān)的具體控制功能分配如下:A 口、B 口地址:送給AM2901 器件用于選擇源與目的操作數(shù)的寄存器編號(hào);I8-I0:選
34、擇操作數(shù)來源、運(yùn)算操作功能、選擇操作數(shù)處理結(jié)果和運(yùn)算器輸出內(nèi)容的3 組3 位的控制碼;SCi、SSH 和SST:用于確定運(yùn)算器最低位的進(jìn)位輸入、移位信號(hào)的入/出和怎樣處理AM2901產(chǎn)生的狀態(tài)標(biāo)志位的結(jié)果。運(yùn)算器的控制信號(hào)的編碼及功能參見TEC-2000 教學(xué)計(jì)算機(jī)系統(tǒng)技術(shù)說明與實(shí)驗(yàn)指導(dǎo)中的第三章硬件系統(tǒng)的基本組成和實(shí)現(xiàn)中的有關(guān)運(yùn)算器的部分。實(shí)驗(yàn)內(nèi)容:1將教學(xué)機(jī)左下方的 5 個(gè)撥動(dòng)開關(guān)置為1XX00(單步、16 位、脫機(jī));先按一下“RESET”按鍵,再按一下“START”按鍵,進(jìn)行初始化。2接下來,按下表所列的操作在十六位機(jī)上進(jìn)行運(yùn)算器脫機(jī)實(shí)驗(yàn),將結(jié)果填入表中:其中 D1取為0101H,D2
35、 取為1010H;通過兩個(gè)12 位的紅色微型開關(guān)向運(yùn)算器提供控制信號(hào),通過16位數(shù)據(jù)開關(guān)向運(yùn)算器提供數(shù)據(jù),通過指示燈觀察運(yùn)算結(jié)果及狀態(tài)標(biāo)志。運(yùn)算I8-I0ABSCiSSTSSH壓START前壓START后ALU輸出CZVSALU輸出CZVS*D1+0-R0011000111不用000000001000101隨機(jī)01010000*D2+0-R1011000111不用000100001001010000010100000R0+R1-R00110000010001000000001001111000021210000R0-R1-R001100100100010000010010001010000F0
36、F11000R1-R0-R10110010010000000101001000F0F10000E0E1000R0R1-R00110110010000000100001000F0F10000F0F1000R0R1-R00111000010001000000001000101100001011000R0R1-R00111100010001000000001000E0EE100001011000(R0R1)-R0011111001000100000000100FEFE10000E0E10012*R0-R0111000011不用00000000100FEFE1001FDFC0001R0/2-R0101
37、000011不用00000000100FDFC00017EFE0001注:用*標(biāo)記的運(yùn)算,表示D1、D2 的數(shù)據(jù)是由撥動(dòng)開關(guān)SW 給出的。實(shí)驗(yàn)要求:1實(shí)驗(yàn)之前認(rèn)真預(yù)習(xí),寫出預(yù)習(xí)報(bào)告,包括操作步驟,實(shí)驗(yàn)過程所用數(shù)據(jù)和運(yùn)行結(jié)果等,則實(shí)驗(yàn)效率會(huì)很低,所學(xué)到的內(nèi)容也會(huì)大受影響;2實(shí)驗(yàn)過程當(dāng)中,要仔細(xì)進(jìn)行,防止損壞設(shè)備,分析可能遇到的各種現(xiàn)象,判斷結(jié)果是否正確,記錄運(yùn)行結(jié)果;3實(shí)驗(yàn)之后,認(rèn)真寫出實(shí)驗(yàn)報(bào)告,包括對(duì)遇到的各種現(xiàn)象的分析,實(shí)驗(yàn)步驟和實(shí)驗(yàn)結(jié)果,自己在這次實(shí)驗(yàn)的心得體會(huì)與收獲實(shí)驗(yàn)四 I/O 口擴(kuò)展實(shí)驗(yàn)(選做)實(shí)驗(yàn)?zāi)康模簩W(xué)習(xí)串行口的正確設(shè)置與使用;實(shí)驗(yàn)說明:1. TEC-2000 配置了兩個(gè)串行接口
38、COM1 和COM2,其中COM1 口是系統(tǒng)默認(rèn)的串行口,加電復(fù)位后,監(jiān)控程序?qū)ζ溥M(jìn)行初始化,并通過該口與PC 機(jī)或終端相連;而COM2 口,留給用戶擴(kuò)展用。2. 查閱有關(guān)書籍,了解串行通信接口芯片8251 的工作原理;了解8251 復(fù)位、初始化、數(shù)據(jù)傳輸?shù)倪^程。提醒注意的是,每次對(duì)8251 復(fù)位后(即按1 次“RESET”按鍵),都需要對(duì)其進(jìn)行初始化,然后再進(jìn)行正常的數(shù)據(jù)傳輸;復(fù)位后,只能對(duì)其進(jìn)行1 次初始化,多次初始化將導(dǎo)致串口工作不正常。3. 在使用COM2 口時(shí),需要將兩片8251 芯片之間的插針短接,這樣才能為COM2 正常工作提供所需的控制信號(hào)和數(shù)據(jù);另外,還需要為其分配數(shù)據(jù)口地址
39、和控制口地址。本教學(xué)機(jī),已將COM2 口的C/ D與地址總線的最低位AB0 相連,而其片選信號(hào)未連,只引出1 個(gè)插孔,實(shí)驗(yàn)時(shí),應(yīng)將該插孔與標(biāo)有“I/O /CS”的7 個(gè)插孔中的1 個(gè)相連。實(shí)驗(yàn)內(nèi)容:1. 為擴(kuò)展 I/O 口選擇一個(gè)地址,即將與COM2 口相連的8251 的/CS 與標(biāo)有I/O /CS 的插孔中的一個(gè)相連;2. 將 COM2 口與終端或另一臺(tái)運(yùn)行有PCEC 的PC 機(jī)的串口相連;3. 用監(jiān)控程序的 A 命令,編寫一段小程序,先初始化COM2 口,在向COM2 口發(fā)送一些字符,也可從COM2 口接收一些字符,或?qū)崿F(xiàn)兩個(gè)串口的通信;實(shí)驗(yàn)要求:應(yīng)了解監(jiān)控程序的 A 命令只支持基本指令,
40、擴(kuò)展指令應(yīng)用E 命令將指令代碼寫入到相應(yīng)的存儲(chǔ)單元中;實(shí)驗(yàn)步驟:1. 為擴(kuò)展 I/O 口選擇一個(gè)地址:將與COM2 口相連的8251 的/CS 與標(biāo)有I/O /CS 的插孔中地址為A0AF 的一個(gè)相連;注意,將兩片8251 芯片之間的插針短接;2. 將教學(xué)機(jī) COM2 口與另一臺(tái)PC 機(jī)相連,也可與同一臺(tái)PC 的另一個(gè)串口相連。3. 在與 COM2 口相連的PC 機(jī)上運(yùn)行PCEC.EXE;4. 用 A、E 命令編程進(jìn)行COM2 口的操作。(標(biāo)有*的語句要用E 命令直接寫入指令編碼)1)程序1:COM2 口初始化在命令行提示符狀態(tài)下輸入:A 2000從 2000H 單元開始輸入下面的程序2000
41、:MVRD R0,004E ;給R0 賦值004E2002:*OUT A1 ;將R0 的值輸出到COM2 口的8251 中的寄存器中2003:MVRD R0,0037 ;給R0 賦值00372005:*OUT A1 ;將R0 的值輸出到COM2 口的8251 中的寄存器中2006:RET在命令行提示符狀態(tài)下輸入G 2000 運(yùn)行初始化程序,完成對(duì)COM2 口的初始化。每次按“RESET”按鍵后,在對(duì)COM2 進(jìn)行讀寫操作之前,都應(yīng)運(yùn)行該程序。需要注意的是,按一次“RESET”按鍵后,只能對(duì)COM2 口進(jìn)行一次初始化操作。2)程序2:從COM2 口輸入數(shù)據(jù),然后在與COM1 口相連的PC 上顯示
42、給數(shù)據(jù)。在命令行提示符狀態(tài)下輸入:A 2000從 2040H 單元開始輸入下面的程序2040:*IN A1 ; 判鍵盤上是否按了一個(gè)鍵,2041:SHR R0 ; 即串行口是否有了輸入的字符2042:SHR R02043:JRNC 2040 ; 沒有輸入則循環(huán)測(cè)試2044:*IN A0 ; 從 COM2 口讀入字符到R02045:OUT 80 ;將該字符從COM1 口輸出2046:RET2047:運(yùn)行該程序,在命令行提示符狀態(tài)下輸入:G 2040光標(biāo)閃爍等待輸入,從與 COM2 口相連的PC 的鍵盤輸入字符,則在與COM1 口相連的PC的屏幕上回顯。3)程序3:從COM1 口接收數(shù)據(jù),發(fā)送到與
43、COM2 口相連的PC 上。在命令行提示符狀態(tài)下輸入:A 2000從 2060H 單元開始輸入下面的程序(2060)IN 81 ;判鍵盤上是否按了一個(gè)鍵,2061:SHR R0 ;即串行口是否有了輸入的字符2062:SHR R02063:JRNC 2060 ;沒有,則循環(huán)等待2064:IN 80 ;接收字符2065:*OUT A0 ;將從鍵盤輸入的字符輸出到另一串口。2066:RET2067:運(yùn)行該程序,在命令行提示符狀態(tài)下輸入:G 2060光標(biāo)閃爍等待用戶輸入,從鍵盤輸入 6,可在另一PC 的屏幕上回顯出6。實(shí)驗(yàn)五 組合邏輯控制器部件教學(xué)實(shí)驗(yàn)實(shí)驗(yàn)?zāi)康耐ㄟ^看懂教學(xué)計(jì)算機(jī)中已經(jīng)設(shè)計(jì)好并正常運(yùn)行的
44、幾條典型指令(例如,ADD、SHR、OUT、MVRD、JRC、RET、CALA 等指令)的功能、格式和執(zhí)行流程,然后自己設(shè)計(jì)幾條指令的功能、格式和執(zhí)行流程,并在教學(xué)計(jì)算機(jī)上實(shí)現(xiàn)、調(diào)試正確。其最終要達(dá)到的目的是:1 深入理解計(jì)算機(jī)控制器的功能、組成知識(shí);2 深入地學(xué)習(xí)計(jì)算機(jī)各類典型指令的執(zhí)行流程;3 對(duì)指令格式、尋址方式、指令系統(tǒng)、指令分類等建立具體的總體概念;4 學(xué)習(xí)組合邏輯控制器的設(shè)計(jì)過程和相關(guān)技術(shù)。實(shí)驗(yàn)說明控制器設(shè)計(jì)是學(xué)習(xí)計(jì)算機(jī)總體組成和設(shè)計(jì)的最重要的部分。要在 TEC-2000 教學(xué)計(jì)算機(jī)完成這項(xiàng)實(shí)驗(yàn),必須比較清楚地懂得:1 TEC-2000 教學(xué)機(jī)的控制器主要由教學(xué)機(jī)上的MACH 器件
45、和7 片GAL20V8 組成;2 TEC-2000 教學(xué)機(jī)上已實(shí)現(xiàn)的全部基本指令的控制信號(hào)由MACH 給出的;而擴(kuò)展指令的控制信號(hào)則由7 片GAL 給出;3 應(yīng)了解監(jiān)控程序的 A 命令只支持基本指令,擴(kuò)展指令應(yīng)用E 命令將指令代碼寫入到相應(yīng)的存儲(chǔ)單元中;不能用T、P 命令單步調(diào)試擴(kuò)展指令,只能用G 命令執(zhí)行擴(kuò)展指令。4 要明白 TEC-2000 教學(xué)機(jī)支持的指令格式及指令執(zhí)行流程分組情況;理解TEC-2000 教學(xué)機(jī)中已經(jīng)設(shè)計(jì)好并正常運(yùn)行的各類指令的功能、格式和執(zhí)行流程,也包括控制器設(shè)計(jì)與實(shí)現(xiàn)中的具體線路和控制信號(hào)的組成。擴(kuò)展指令的參考設(shè)計(jì)方案,已在TEC-2000 教學(xué)計(jì)算機(jī)系統(tǒng)技術(shù)說明與實(shí)
46、驗(yàn)指導(dǎo)第二章中給出。5 要明確自己要實(shí)現(xiàn)的指令格式、功能、執(zhí)行流程設(shè)計(jì)中必須遵從的約束條件。為了完成自己設(shè)計(jì)幾條指令的的功能、格式和執(zhí)行流程,并在教學(xué)計(jì)算機(jī)上實(shí)現(xiàn)、調(diào)試正確的實(shí)驗(yàn)內(nèi)容,具體過程包括:1) 確定指令格式和功能,要受教學(xué)機(jī)已有硬件的約束,應(yīng)盡量與已實(shí)現(xiàn)指令的格式和分類辦法保持一致;2) 劃分指令執(zhí)行步驟并設(shè)計(jì)每一步的執(zhí)行功能,設(shè)計(jì)節(jié)拍狀態(tài)的取值,應(yīng)參照已實(shí)現(xiàn)指令的處理辦法來完成,特別要注意的是,讀取指令的節(jié)拍只能用原來已實(shí)現(xiàn)的,其他節(jié)拍的節(jié)拍狀態(tài)也應(yīng)盡可能地與原用節(jié)拍的狀態(tài)保持一致和相近;3) 在指令流程表中填寫每一個(gè)控制信號(hào)的狀態(tài)值,基本上是個(gè)查表填數(shù)的過程,應(yīng)該特別仔細(xì),并有意
47、識(shí)地體會(huì)這些信號(hào)的控制作用;4) 寫出每個(gè)控制信號(hào)的完整邏輯表達(dá)式,可能和必要的話,進(jìn)行一點(diǎn)邏輯化簡(jiǎn);5) 把這些控制信號(hào),按教學(xué)計(jì)算機(jī)設(shè)計(jì)中規(guī)定的幾個(gè) GAL20V8 的引腳分配結(jié)果編程到相應(yīng)的GAL20V8 芯片中去;6) 寫一個(gè)包含你設(shè)計(jì)的指令的程序,通過運(yùn)行該程序檢查執(zhí)行結(jié)果的正確性,來初步判斷你的設(shè)計(jì)是否正確;如果有問題,通過幾種辦法查出錯(cuò)誤并改正,繼續(xù)調(diào)試,直到完全正確。實(shí)驗(yàn)內(nèi)容1 完成控制器部件的教學(xué)實(shí)驗(yàn),主要內(nèi)容是由學(xué)生自己設(shè)計(jì)幾條指令的的功能、格式和執(zhí)行流程,并在教學(xué)計(jì)算機(jī)上實(shí)現(xiàn)、調(diào)試正確。2 首先是看懂 TEC-2000 教學(xué)計(jì)算機(jī)的功能部件組成和線路邏輯關(guān)系,然后分析教學(xué)
48、計(jì)算機(jī)中已經(jīng)設(shè)計(jì)好并正常運(yùn)行的幾條典型指令(例如,ADD、SHR、OUT、MVRD、JRC、CALA、RET 等指令)的功能、格式和執(zhí)行流程。3 設(shè)計(jì)幾條指令的功能、格式和執(zhí)行流程,并在教學(xué)計(jì)算機(jī)上實(shí)現(xiàn)、調(diào)試正確。例如 ADC、JRS、JRNS、LDRA、STOR、JMPR 等指令,可以從TEC-2000 教學(xué)計(jì)算機(jī)系統(tǒng)技術(shù)說明與實(shí)驗(yàn)指導(dǎo)第二章給出的19 條擴(kuò)展指令中任意選擇,當(dāng)然也可以設(shè)計(jì)與實(shí)現(xiàn)其它的指令,包括原來已經(jīng)實(shí)現(xiàn)的基本指令(要變換為另外一個(gè)指令操作碼)或自己確定的指令。需要注意的是,在做擴(kuò)展指令時(shí),要把新指令用到的控制邏輯編程到 7 片GAL20V8 中去。其中GAL1GAL7 的
49、管腳定義和擴(kuò)展指令的代碼、分類、節(jié)拍在TEC-2000 教學(xué)計(jì)算機(jī)系統(tǒng)技術(shù)說明與實(shí)驗(yàn)指導(dǎo)第二章中提供了參考方案,如果采用提供的參考方案,則不需要重寫TIMING GAL,否則要對(duì)TIMING GAL 進(jìn)行改寫。4 單條運(yùn)行指令,查看指令的功能、格式和執(zhí)行流程。先將教學(xué)機(jī)左下方的 5 個(gè)撥動(dòng)開關(guān)置為11101,再按一下“RESET”按鍵,然后通過16 位的數(shù)據(jù)開關(guān)(SWH、SWL)置入指令,按“START”按鍵單步送脈沖,通過指示燈觀察控制信號(hào)的變化。5 用監(jiān)控程序的 A、E(擴(kuò)展指令必須用E 命令置入)命令編寫一段小程序,觀察運(yùn)行結(jié)果。實(shí)驗(yàn)時(shí)將教學(xué)機(jī)左下方的 5 個(gè)撥動(dòng)開關(guān)置為00101,運(yùn)行
50、編寫的小程序。觀察終端顯示的結(jié)果,檢驗(yàn)設(shè)計(jì)的指令是否正確。若與預(yù)定結(jié)果不符,可查看指令的功能、格式、執(zhí)行、流程設(shè)計(jì)的是否正確。實(shí)驗(yàn)要求1 實(shí)驗(yàn)之前,應(yīng)認(rèn)真準(zhǔn)備,寫出實(shí)驗(yàn)步驟和具體設(shè)計(jì)內(nèi)容,否則實(shí)驗(yàn)效率會(huì)特別低,一次實(shí)驗(yàn)時(shí)間根本無法完成實(shí)驗(yàn)任務(wù),即使基本做對(duì)了,也很難說學(xué)懂了些什么重要教學(xué)內(nèi)容;2 應(yīng)在實(shí)驗(yàn)前掌握所有控制信號(hào)的作用,在脫機(jī)運(yùn)算器實(shí)驗(yàn)中,已給出了與運(yùn)算器有關(guān)的控制信號(hào)的作用,16 位機(jī)組合邏輯控制器用到的控制信號(hào)的功能表參見TEC-2000 教學(xué)計(jì)算機(jī)技術(shù)說明和實(shí)驗(yàn)指導(dǎo)第三章。3 實(shí)驗(yàn)過程中,應(yīng)認(rèn)真進(jìn)行實(shí)驗(yàn)操作,既不要因?yàn)榇中脑斐啥搪返仁鹿识鴵p壞設(shè)備,又要仔細(xì)思考實(shí)驗(yàn)有關(guān)內(nèi)容,提高
51、學(xué)習(xí)的主動(dòng)性和創(chuàng)造性,把自己想不太明白的問題通過實(shí)驗(yàn)理解清楚,爭(zhēng)取最好的實(shí)驗(yàn)效果,力求達(dá)到教學(xué)實(shí)驗(yàn)的主要目的;4 實(shí)驗(yàn)之后,應(yīng)認(rèn)真思考總結(jié),寫出實(shí)驗(yàn)報(bào)告,包括實(shí)驗(yàn)步驟和具體實(shí)驗(yàn)結(jié)果,遇到的主要問題和分析與解決問題的思路。大家應(yīng)該認(rèn)識(shí)到,遇到一些問題是好事情,通過分析與解決這些問題,才提高了自己的工作能力,學(xué)習(xí)到更多的知識(shí)。還未理解清楚,但實(shí)驗(yàn)結(jié)果正確了就匆忙結(jié)束實(shí)驗(yàn),并沒有達(dá)到教學(xué)實(shí)驗(yàn)的目的。實(shí)驗(yàn)報(bào)告中,還應(yīng)寫出自己的學(xué)習(xí)心得和切身體會(huì),也可以對(duì)教學(xué)實(shí)驗(yàn)提出新的建議等。實(shí)驗(yàn)報(bào)告要交給教師評(píng)閱并給出實(shí)驗(yàn)成績(jī)。實(shí)驗(yàn)步驟1 接通教學(xué)機(jī)電源;2 將教學(xué)機(jī)左下方的 5 個(gè)撥動(dòng)開關(guān)置為11101(單步、手
52、動(dòng)置指令、組合、16 位、聯(lián)機(jī));3 按一下“RESET”按鍵;4 通過 16 位的數(shù)據(jù)開關(guān)SWH、SWL 置入指令操作碼;5 在單步方式下,通過指示燈觀察各類基本指令的節(jié)拍(請(qǐng)參看TEC-2000 教學(xué)計(jì)算機(jī)系統(tǒng)技術(shù)說明與實(shí)驗(yàn)指導(dǎo)第二章中提供的指令流程表和指令流程框圖)。1)選擇基本指令的A 組指令中的ADD 指令,觀察其節(jié)拍流程: 置撥動(dòng)開關(guān) SW=0000000 00000001;(表示指令A(yù)DD R0,R1 ) 按 RESET 按鍵;節(jié)拍指示燈T4T0 顯示 0 1000;(本拍在第1 次復(fù)位后才會(huì)執(zhí)行) 按 START 按鍵;節(jié)拍指示燈T4T0 顯示 0 0000;(以上兩拍,為公共節(jié)拍,在手動(dòng)置指令方式下無意義) 按 START 按鍵;節(jié)拍指示燈T4T0 顯示 0 0010;(本拍也是公共節(jié)拍,將指令編碼寫入指令寄存器IRH、IRL1) 按 START 按鍵;節(jié)拍指示燈T4T0 顯示 0 0011;(本拍執(zhí)行ADD 指令,R0R0+R1操作)可以看到,A 組指令(包括ADD、SUB、CMP、AND、XOR、SHR、SHL、I
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年09月2024屆華夏銀行昆明分行校園招聘筆試歷年參考題庫(kù)附帶答案詳解
- 2024年08月廣發(fā)銀行深圳分行夏季校園招聘(45人)筆試歷年參考題庫(kù)附帶答案詳解
- 2024年08月中國(guó)光大銀行蘇州分行公司客戶經(jīng)理崗招聘筆試歷年參考題庫(kù)附帶答案詳解
- 2024年08月中國(guó)光大銀行淄博分行轄屬支行副行長(zhǎng)(分管零售條線)招聘筆試歷年參考題庫(kù)附帶答案詳解
- 2024年08月中國(guó)人民財(cái)產(chǎn)保險(xiǎn)股份有限公司黔南分公司(貴州)招考5名派遣制工作人員筆試歷年參考題庫(kù)附帶答案詳解
- 篆刻古代文化常識(shí)單選題100道及答案
- 2024年08月陜西2024年北京銀行西安分行校園招考筆試歷年參考題庫(kù)附帶答案詳解
- 2024年08月浙江/上海浦發(fā)銀行信息科技部社會(huì)招考(827)筆試歷年參考題庫(kù)附帶答案詳解
- 2024年08月河北平安銀行經(jīng)營(yíng)管理類社會(huì)招考(803)筆試歷年參考題庫(kù)附帶答案詳解
- 2024年08月江蘇2024屆江蘇銀行淮安分行秋季校園招考筆試歷年參考題庫(kù)附帶答案詳解
- 【合同范本】補(bǔ)充協(xié)議-面積差補(bǔ)款-預(yù)售版
- 藝術(shù)(音樂、美術(shù))專業(yè)人才需求情況調(diào)研報(bào)告
- [QC成果]提高剪力墻施工質(zhì)量一次合格率
- 移印工作業(yè)指導(dǎo)書
- 樂高基礎(chǔ)篇樂高積木和搭建種類專題培訓(xùn)課件
- 低血糖的觀察和護(hù)理課件
- 事故形成的冰山理論
- 溶解度曲線教學(xué)設(shè)計(jì)
- 硅膠產(chǎn)品工藝流程圖
- 醫(yī)院各科室規(guī)章制度匯編
- 土地翻耕施工組織方案
評(píng)論
0/150
提交評(píng)論