2012-11-23 63 views
-1

我想在屏幕上顯示'F'。當我編譯我的代碼時,它沒有任何問題,但沒有顯示'F'。 編譯器是:emu8086 的代碼是:彙編器沒有顯示任何輸出?

stseg segment 
db 64 dup(?) 
stseg ends 

dtseg segment 
dtseg ends 

cdseg segment 
main proc far 
assume cs:cdseg,ds:dtseg,ss:stseg 
mov ax,dtseg 
mov ds,ax 
call clear 
call color 
call moh 
mov ah,4ch 
int 21h 
main endp 

clear proc 
mov ax,0600h 
mov bh,07 
mov cx,0000 
mov dx,184fh 
clear endp 

color proc 
mov ah,0b 
mov bh,0 
mov bl,4 
int 10h 
color endp 

moh proc 
mov cx,100 
mov dx,30 
back:mov ah,0ch 
mov al,01 
int 10h 
inc cx 
cmp cx,130 
jnz back 
mov cx,100 
mov dx,50 
loo: mov ah,0ch 
mov al,01 
int 10h 
inc cx 
cmp cx,130 
jnz loo 
mov cx,100 
mov dx,30 
joo: mov ah,0ch 
mov al,01 
int 10h 
inc cx 
cmp cx,50 
jnz joo 
cdseg ends 

回答

0

您需要:視頻模式設置成首先圖形爲你的畫,男,例如int 10用ah 0x00和al 0x04(選擇320x200 4色圖形模式)

+0

也許這就是clear-proc的意圖,但是肯定缺少一個int? – pbhd

+0

我應該在調用函數之前在cdsegment中寫入這個命令嗎? –

+0

我只是在moh(這是繪畫)的電話之前做的mov啊,0 mov al,4 int 10(好的,每條指令都必須單獨行) – pbhd