河北工業大學微控制器第三次實驗內容

2022-04-12 01:46:16 字數 2388 閱讀 3867

3.3組合語言程式設計實驗

實驗六分支程式設計

一、 實驗目的

1. 進一步熟悉mcs-51指令系統,了解組合語言程式設計的基本結構。

2. 掌握分支結構程式設計的方法。

3. 學會用條件轉移指令、cjne、jmp及其配合使用來編寫二分支、三分支和多分支程式。

二、 實驗內容

1. 二分支的條件轉移程式

設變數x存放於r0,函式值y存放在r1,其中x、y均為二進位制數。試按照下式的要求給y賦值:

程式框圖如圖3-5所示:

:三、實驗步驟

1. 根據實驗內容和參考程式流程圖,編出相應的分支結構程式。

2. 輸入程式,彙編成功;

3. 用f4(執行到游標處)、f7(跟蹤執行)、f8(單步執行)或斷點執行等方式除錯程式;

4. 觀察程式的流程,記錄執行結果。

四、思考題

1. cjne指令對cy 有影響嗎?用cjne 和jc/jnc指令配合應注意什麼?

在用jmp 指令前,若變址255怎麼辦?

答:1)cjne指令對cy 有影響。cjne (目的位元組),(源位元組),rel 功能 :目的位元組與源位元組比較,相等則繼續執行,不相等則轉移,同時,

若目的位元組》=源位元組,(c)=0

若目的位元組《源位元組,(c)=1

2)選取好正確的direct值以便確定cy的值

3)提前設好變址,使變址<255

2.用什麼指令可以實現多分支之間的隔離?

答:控制、條件轉移指令,包括jmp、cjne、djnz、jc、jb等,可以轉移到$或其他。

五、實驗報告要求

寫出題目執行結果。

六、參考程式清單

1、二分支的條件轉移程式

1) 用二分支結構程式實現:

org 0000h

mov a, r0

jz load等於零轉load

jnb acc.7,go大於零轉go

mov a, #0ffh

sjmp load

go: mov a, #01h

load: mov r1, a

sjmp $

end1)賦值(r0)=00h

執行結果:(r1)=0x00

2)賦值(r0)=15h

執行結果: (r1)=0x01

3)賦值(r0)=0f2h

執行結果:(r1)= 0xff

2)用三分支結構程式實現:

org 0000h

mov a, r0

jnz comp ;不等於零轉comp

mov r1,#00h ;等於零,則0 (r1)

sjmp ***

comp: cjne r0,#80h,mp1 ;(r0)中數與80h比較,不相等則轉移到mp1

mov r1,#0ffh ;若比較相等,則-1 (r1)

ljmp ***

mp1: jc mp2兩數不相等,(r0)> 0轉mp2

mov r1,#0ffh ;(r0) < 0,-1 (r1)

ljmp ***

mp2: mov r1,#01h ;(r0)>0,1 (r1)

***: sjmp $

end1) 賦值(r0)=00h

執行結果:(r1)=0x00

2) 賦值(r0)=15h

執行結果:(r1)=0x01

3)賦值(r0)=0f2h

執行結果:(r1)=0xff

實驗七迴圈程式設計

一、實驗目的

1. 進一步熟悉mcs-51指令系統,了解組合語言程式設計的基本結構。掌握迴圈結構程式設計的方法,弄清單重及多重迴圈控制過程。

2. 通過設計軟體延時程式,學會計算內外迴圈次數以及迴圈體的迴圈時間。

二、 實驗內容

1. 設計乙個迴圈程式

具體要求:將內部ram中30h至32h的內容右移四位,程式流程圖如圖3-6所示。

2. 設計迴圈程式:冒泡法排序。

具體要求:設微控制器8031外部ram從3600h單元開始存放10個無符號數,試編寫程式能使它們按從大到小的順序排列(最大數存放在3600h單元)。程式流程圖如圖3-7所示

三、 實驗步驟

1. 輸入預先編好的程式,彙編成功;

2. 用自動單步方式執行程式,觀察迴圈計數器的變化情況。

3. 用斷點執行方式除錯排序程式,記錄排序過程。

四、實驗報告要求

1. 編出相應的迴圈結構程式,列出程式清單,並且會計算迴圈體的迴圈時間。

2. 寫出自選題目的設計內容、程式清單及執行結果。

五、思考題

1. 程式中迴圈時間由什麼來控制?

上海第二工業大學微控制器實驗實訓實驗報告

微控制器實驗實訓實驗報告2 班級 10計科a1 學號 20123430074姓名 賈強強 1.實驗目的 熟練掌握對基本i o口的控制方法,通過編寫迴圈和延時程式控制p1口引腳訊號電平的高低,從而實現相對應led燈的亮滅 2 實驗要求 led燈的亮滅時間為1秒,並伴隨有你蜂鳴器1秒間隔的 嘀 聲 3....

河北工業大學陡河電廠實習報告

大唐國際陡河發電廠實習報告 河北工業大學高舉 工學並舉 偉大旗幟歷經百餘年一路走來,如今終於把口號付諸於實踐。經過熱能專業三年的學習,專業課程已將要結束,在理論知識積累快要完畢時為了加深我們對所學專業的認識,提高專業素養,培養專業熱情,為以後的就業學習做準備,學院特意精心為我們安排了到唐山陡河電廠進...

附1 塗卡要求河北工業大學

附1 塗卡要求。影象資訊採集卡填塗說明 1 所在院校名稱及院校 本一 河北工業大學10080 本三 河北工業大學城市學院 13584。1 院 系 從左向右,只填頭兩個空格 2 姓名及區位碼 從左向右依次填寫,中間不得空格,如出現編碼本內查詢不到的漢字,請將區位碼內的四個數字一律填塗 0 並請在漢字旁...