4
我試圖用十進制顯示D0,但是當我運行程序時,什麼都不顯示。我沒有得到任何錯誤,並且當我查看寄存器D0時,我看到了十六進制的期望值,但是未顯示十進制等值。我正在嘗試使用TRAP來做到這一點,我們在課堂上展示了這一點。我究竟做錯了什麼?有問題的代碼行是代碼開始處的第17行。它說「TRAP#15以十進制顯示D0」。謝謝你的幫助。以十進制顯示寄存器 - 彙編語言EASy68K
*-----------------------------------------------------------
* Program Number: 0
* Written by : Bryan Kriss
* Date Created : 10/06/2013
* Description : This program performs If-then-else statement.
*
*-----------------------------------------------------------
START ORG $1000 Program starts at loc $1000
IF CMP #12,P Is P > 12?
BLE ENDIF If P < 12, go to ENDIF
ASL P Shift left
ASL P Shift left
ASL P Shift left
ADD #4,P P + 4
MOVE P,D0 Move P into D0
EXT.L D0
TRAP #15 Display D0 in decimal
STOP #$2700 Stop execution
ENDIF MOVE Q,D1 Move the value of Q into D1
SUB D1,D0 P - D1 (P-Q)
MOVE D0,D1 Move P into D1
STOP #$2700 Stop execution
* Data section
ORG $2000 Data starts at loc 2000
P DC.W 15 int P = 15;
Q DC.W 7 int Q = 7;
END START
謝謝!它的工作,但只是讓我更好地理解,什麼是選擇,你怎麼知道要輸入什麼數字? – Brett
當然 - 請參閱上面的最新編輯,並鏈接到相關的easy68k文檔。 –
再次感謝! – Brett