汇编语言实现图形绘制——矩形、三角形等

汇编语言实现图形绘制一、准备工作1.INT 10H的功能INT 10H 是由 BIOS 对屏幕及显示器所提供的服务程序。使用 INT 10H 中断服务程序时,先指定 AH 寄存器编,该编号表示欲调用的功用,然后再定义其它寄存器内容,当一切设定好之后再调用 INT 10H。下面是我们在程序中用到的指令:AH=00HAH=00/INT 10H 是用来设定显示模式的服务程序,AL 寄...
摘要由CSDN通过智能技术生成

汇编语言实现图形绘制

一、准备工作

1.INT 10H的功能

INT 10H 是由 BIOS 对屏幕及显示器所提供的服务程序。使用 INT 10H 中断服务程序时,先指定 AH 寄存器编,该编号表示欲调用的功用,然后再定义其它寄存器内容,当一切设定好之后再调用 INT 10H。下面是我们在程序中用到的指令:

AH=00H

AH=00/INT 10H 是用来设定显示模式的服务程序,AL 寄存器表示欲设定的模式

;AL部分模式说明
mov al,12h          ;640*480 256的图形模式:            
mov al,13h          ;320*200 256色的图形模式:

;完整调用
mov al,13h          ;320*200 256色的图形模式:
mov ah,0            ;是用来设定显示模式的服务程序
int 10h

AH=0CH

AH=0Ch/INT 10H 是在绘图模式中显示一点 ( 也就是写入点像),而 AH=0DH/INT 10H 则是读取点像。

写入时,要写入位置 X 坐标存于 CX 寄存器,Y 坐标存于 DX 寄存器,颜色存于 AL 寄存器。对于汇编的显示窗口,左上角为原点,向右为X轴,越往右X数值越大;向下为Y轴,越往下Y数值越大。X、Y坐标的边界以及颜色的种类则和之前定义的显示模式相关。

显示模式 X 座标 Y 座标 颜色
4 0~319 0~199 0、1
5 0~319 0~199 0~3
6 0~639 0~199 0、1

AH=0DH/INT 10H 则是读取某一位置之点像,您必须指定 CX、DX,而 INT 10H 会传回该位置点像之颜色。

;完整调用
mov cx,10             ;x坐标
mov dx,10             ;y坐标
mov al,1100b          ;淡红色
mov ah,0ch            ;写入点像
int 10h               ;调用中断
二进制数 颜色 例子 二进制数 颜色 例子
0000 黑色 black 1000 灰色 gray
0001 蓝色 blue 1001 淡蓝色 light blue
0010 绿色 green 1010 淡绿色 light green
0011 青色 cyan
  • 41
    点赞
  • 207
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值