8086设置光标背景颜色
时间: 2023-08-26 18:03:58 浏览: 44
8086微处理器并不直接控制显示器的光标背景颜色,而是通过设置显示模式和属性来实现。下面是一个使用MASM汇编语言来设置光标背景颜色的简单示例程序:
```
.model small
.stack 100h
.data
msg db "This is a test message with color cursor background", '$'
.code
main proc
mov ax, @data
mov ds, ax
mov ah, 00h ; 设置显示模式
mov al, 03h ; 文本模式,80*25字符,16种颜色
int 10h
mov ah, 09h ; 显示带颜色的提示信息
lea dx, msg
int 21h
mov ah, 03h ; 设置显示属性
mov bh, 0 ; 页码
mov ah, 0Eh ; 显示属性:黑底白字
int 10h
mov ah, 01h ; 设置光标形状
mov ch, 0 ; 上边界行号
mov cl, 0 ; 左边界列号
mov dh, 24 ; 下边界行号
mov dl, 79 ; 右边界列号
int 10h
mov ah, 0Bh ; 设置光标颜色
mov bh, 0 ; 页码
mov bl, 0Fh ; 白底亮灰色光标
int 10h
mov ah, 02h ; 设置光标位置
mov bh, 0 ; 页码
mov dh, 12 ; 行号
mov dl, 30 ; 列号
int 10h
mov ah, 06h ; 滚屏
mov al, 01h ; 滚屏行数
mov bh, 0Fh ; 光标颜色
mov cx, 0 ; 属性
mov dh, 24 ; 上边界行号
mov dl, 0 ; 左边界列号
mov ah, 07h ; 向上滚动一行
int 10h
mov ah, 4Ch ; 退出程序
int 21h
main endp
end main
```
这个程序首先设置显示模式为文本模式,80*25字符,16种颜色。然后,它显示一个带颜色的提示信息。接着,它设置光标属性为黑底白字,形状为矩形,位置为(12,30)。最后,它设置光标颜色为白底亮灰色,向上滚动一行,然后退出程序。
在这个示例程序中,我使用了INT 10h中断来设置显示模式、属性、光标形状、颜色和位置。你可以根据实际需要修改这些参数来设置不同的光标背景颜色。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)