[英]How to print a char on a specific location in graphics mode using 8086 assembly?
我在Windows上的DOSBox上使用8086汇编。
我想在图形模式下打印一个字符,我知道它是这样的:
mov ah, 0eh ;0eh = 14
mov al, 'x'
xor bx, bx ;Page number zero
mov bl, 0ch ;Color is red
int 10h
上面的代码在屏幕顶部的左侧打印字母“x”。
我不知道如何在屏幕上的特定位置打印'x'字符。 如何在特定位置打印“x”,我该怎么办?
如何在特定位置打印“x”,我该怎么办?
首先要知道,在图形屏幕上,BIOS将无法在您想要的任何(X,Y)位置打印您的角色。 您只能在每个(Col,Row)点上获取可以定位光标的字符。
因此,要在320x200 256色图形屏幕(模式19)的中心显示“x”字符,您可以编码:
mov dl, 20 ;Column
mov dh, 12 ;Row
mov bh, 0 ;Display page
mov ah, 02h ;SetCursorPosition
int 10h
mov al, 'x'
mov bl, 0Ch ;Color is red
mov bh, 0 ;Display page
mov ah, 0Eh ;Teletype
int 10h
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.