我想打印一张小照片10×10像素在一个特定的地方,但我不知道该怎么做。我知道如何打印320 * 200的照片。
你做到这一点使用嵌套循环。外循环迭代y位置和在所述x位置的内循环迭代。
假设你想发生在(50,35)的10×10照片(左上角):
mov si, ... ; Address of your photo data (256 colors)
mov bh, 0 ; Display page
mov dx, 35 ; Y
outerLoop:
mov cx, 50 ; X
innerLoop:
lodsb ; Fetch pixel color from stored photo
mov ah, 0Ch ; BIOS.WritePixel
int 10h
inc cx ; Next X
cmp cx, 50+10
jb innerLoop
inc dx ; Next Y
cmp dx, 35+10
jb outerLoop