Black_Box 发表于 2018-10-5 23:27:20

实验9 我简化了一下小甲鱼老师的代码 但是好像哪里出了问题?

assume cs:codesg,ds:datasg,ss:takesg

datasg segment

        db 'welcome to masm!'
        db '02h','24h','71'
       
datasg ends

takesg segment

        dw 8 dup(0)
       
takesg ends

codesg segment

code:                mov ax,datasg
                        mov ds,ax
                        mov ax,takesg
                        mov ss,ax
                        mov sp,10h ;指针指向栈顶
                       
                        mov ax,0b872dh;
                        mov bx,0 ;颜色
                       
                        mov cx,3;一共三行
                       
                s0: push cx
                        push bx
                        push ax
                        mov es,ax
                        mov ax,0
                        mov si,0;第一个数据的偏移地址
                        mov di,0        ;将数据存放在显示器的偏移地址
                       
                        mov cx,10h
                       
                s1:        mov al,ds:
                        mov es:,al   ;存放一个字节
                        inc di
                        inc si
                        mov al,ds:10h ;存放属性
                        mov es:,al
                        inc di
                       
                        loop s1
                       
                        pop ax
                        add ax 0ah
                        pop bx
                        inc bx
                        pop cx
                       
                        loop s0
                       
                        mov ax,4c00h
                        int 21h
                       
                codesg ends
                end code
                       

Mr.HO 发表于 2019-6-10 19:13:38

DB 第二行是字符了
页: [1]
查看完整版本: 实验9 我简化了一下小甲鱼老师的代码 但是好像哪里出了问题?