TC下使用汇编语言操作显存

以下code若要在.cpp文件中执行,应在每句code前加上asm,比如:asm mov ah,0x00  。注意: re:为标签,不需要加asm    

      通过BIOS设置VGA模式 
  mov ah,00h 
  mov al,12h 
  int 10h 
  以下对VGA控制器设置 
  将VGA控制器,设置为写模式2 
  mov dx,3ceh 
  mov al,5 
  out dx,al ;选择 模式选择寄存器 为当前可用寄存器 
  mov dx,3cfh 
  mov al,2 
  out dx,al ;将模式2设为当前写模式 
  对位屏蔽寄存器设置,使传送给0a000h的八个象素中设位1的象素为有效。 
  mov dx,3ceh 
  mov al,8 
  out dx,al ;选择 位屏蔽寄存器 为当前可用寄存器 
  mov dx,3cfh 
  mov al,11110000b ;让八个象素前四个有效,后四个无效 
  out dx,al 
  对0a000h地址进行操作 
  设置初始参数 
  mov ax,0a000h ;段地址 
  mov es,ax 
  mov bx,00000h ;起始偏移 
  mov al,0ah ;绿色 
  mov cx,0ffffh ;循环次数 
  对内存循环操作写入 
  jmp re 
  re: 
  mov [es:bx],al 
  inc bx 
  loop re 
--------------------- 
作者:chief1985 
来源:CSDN 
原文:https://blog.csdn.net/chief1985/article/details/2528365 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值