0
我正在編寫一個程序來讀寫字符,將小寫字母轉換爲大寫字母。這是我的第一個彙編程序,所以我試圖首先讓程序讀入一個字符並寫出來。這是我已編碼到目前爲止:彙編語言:閱讀(無回聲)並寫入
.model small
.8086
.data
lower db 'a'
.code
start:
mov ax,@data
mov ds,ax
mov ah,8
int 21h
mov dl,al
mov ah,2
int 21h
exit:
mov ax,4c00h
int 21h
end start
我是否正確地處理讀/寫?當我運行這個程序並輸入一個字符時,我只看到它的一個實例。難道不是兩個?一個是我打的信,一個是回信?例如,如果我輸入d,我看到:
d
,但我不應該看到:
d
d
or
dd
謝謝。我們不允許在這個任務中使用echo,所以我只是試圖讀取一個字符,然後將它寫入顯示器。我認爲我正確閱讀角色,但是如果我將角色寫入顯示屏,那麼我的程序是不是應該模仿回聲?也許我的寫入方法有錯誤? – raphnguyen
@raphnguyen:不,你不應該看到兩個字符。你的代碼讀取一個沒有回聲的字符,然後輸出字符。由於你的閱讀沒有回聲,因此角色在輸出之前不會輸出到控制檯。爲了明白我的意思,把把'mov dl,al'改成mov dl,'X''的那一行。當你運行程序時,不管你按什麼鍵,它都會輸出'X'。 –
再次感謝,吉姆。隨着節目多了一些,並取得了很多進展。我想我現在明白它的工作原理。 – raphnguyen