1
我正在使用emu8086彙編程序,我是彙編語言新手。我想用黑色背景以黃色打印所有A-Z字母。我的循環不工作。它繼續運行,只有B字母顯示。
有人可以幫我嗎?這裏是我的代碼:循環不起作用來打印字母
include emu8086.inc
ORG 100h
MOV AX,0B800h
MOV DS,AX
MOV CX,26
ALPHABETS:
MOV CL,41h
ADD CX,1
MOV CH,00001110b
MOV BX,0x0000
MOV [BX],CX
loop ALPHABETS
RET
試着在你的頭上走通這:您可以設置cl到41h,你加1,你寫它,然後你回到字母表,你在哪裏.... –
@DavidWohlferd 'include emu8086.inc ORG 100h' 'MOV AX,0B800H' 'MOV DS,AX' 'MOV CX,25' 'MOV AH,2' 'MOV DL,65' '阿爾法:'' INT 21h' 'INC DL' 'MOV DH,00001110b' '; ADD DH,1' 'MOV BX,0x0000' 'MOV [BX],DX' '環alpha' 'RET' 現在其打印但** A **最後變成** Z **,黃色僅適用於** Z **,這是起始中的** A **。我錯了,請告訴我 – haider
在DOS下,有2種顯示方式:1)在0B800h或2)直接寫入視頻存儲器)使用DOS(或BIOS)中斷,如「int 21h」。你的新代碼正試圖做到這一點,這使得它很難閱讀。我不認爲'int 21h'有任何方式輸出屬性(顏色)。如果這很重要,則需要將字符及其屬性寫入內存(方法1),或使用AH = 09h的['int 10h'](https://en.wikipedia.org/wiki/INT_10H) 。 –