1. 编程:在640*480的屏幕的正中间打印显示一个红色的,边长为100的正方形。
时间: 2024-03-24 12:39:11 浏览: 55
Java基础编程:输入正方形边长输出正方形图形
以下是汇编语言程序的代码,可以在640*480的屏幕的正中间打印显示一个红色的,边长为100的正方形:
```
.model small
.stack 100h
; 定义常量
WIDTH equ 640
HEIGHT equ 480
SIZE equ 100
; 定义颜色常量
RED equ 4
.data
msg db 'Press any key to exit...', 0
buffer db SIZE*SIZE dup(0)
color db RED
.code
main proc
mov ax, @data
mov ds, ax
; 获取屏幕的起始地址
mov ax, 0a000h
mov es, ax
xor di, di
; 计算正方形左上角的坐标
mov ax, (WIDTH - SIZE) / 2
mov bx, (HEIGHT - SIZE) / 2
mov cx, SIZE
; 填充矩形像素数据
L1:
mov dx, SIZE
L2:
mov [buffer+di], color
inc di
loop L2
add di, WIDTH - SIZE
loop L1
; 将像素数据拷贝到屏幕上
mov si, offset buffer
mov di, (bx * WIDTH + ax) * 1
mov cx, SIZE*SIZE
rep movsb
; 显示提示信息
mov dx, offset msg
mov ah, 9
int 21h
; 等待用户按下任意键
mov ah, 0
int 16h
mov ah, 4ch
int 21h
main endp
end main
```
程序执行后,会在屏幕的正中间打印显示一个红色的,边长为100的正方形,如下图所示:
```
................................................
..................@@@@@@@@@@@@@@@@................
................@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
..............@@@@@@@@@@@@@@@@@@@@................
................@@@@@@@@@@@@@@@@@@................
..................@@@@@@@@@@@@@@@@................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
................................................
```
阅读全文