汇编nasm插入图片

org 0x8400
jmp start

bmphead equ 9000h
bmppal equ 9036h
bmpdata equ 9436h

width dw 320
height dw 200
total dw 64000

start:
    mov ah,00h
	mov al,13h
	int 10h			
    
	mov ax, 0xa000
	mov es,ax		

    mov ax, 0
    mov ds, ax

    call quse
    call draw

jmp $

quse:                                       ;取背景色0-255,256出循环
    push dx
    push bx
    push ax
    push di
    push cx

    mov si, 0
    mov bl, 0
    mov di, 0
    mov cx, 0

quse_x1:                                     ;排色
    
    mov dx, 0x3c8
    mov al, bl
    out dx, al
    mov dx, 0x3c9
    mov al, [ds:bmppal+di + 2]
    shr al, 2
    out dx, al
    mov al, [ds:bmppal+di + 1]
    shr al, 2
    out dx, al
    mov al, [ds:bmppal+di]
    shr al, 2
    out dx, al
    add di, 4

    inc bl
    inc cx
    cmp cx, 256
    jb quse_x1

    pop cx
    pop di
    pop ax
    pop bx
    pop dx
ret

draw:
    push ax
    push bx
    push cx
    push dx
    push di
    push si
    push bp

    mov di,63684				
    mov bp,0x436				
    mov bx,0x900				
    mov ds,bx
    mov bx,200
draw_x1:
    mov cx,320
draw_x2:
    mov al,[ds:bp]
    mov [es:di],al
    inc bp
    inc di
    loop draw_x2
    sub di,640
    dec bx
    cmp bx,0
    jnz draw_x1
    
    pop bp
    pop si
    pop di
    pop dx
    pop cx
    pop bx
    pop ax
ret
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值