博丽灵梦 发表于 2012-11-8 09:41:08

关于实验9的代码,跟答案的思路不同,可取吗?

assume cs:codesg,ds:datasg,ss:stacksg
datasg segment
        db 'welcome to masm!'
        db 2h,24h,71h
datasg ends

stacksg segment
        dw 8 dup (0)
stacksg ends

codesg segment
        start:        mov ax,        0b800h
                        mov ds,        ax        ;写入显示缓存的段地址
                        mov si,        10h        ;颜色偏移地址
                        mov di,        720h
                        mov ax,        datasg
                        mov es,        ax        ;需要写入内存的段地址
                        mov ax,        stacksg
                        mov ss,        ax
                        mov sp, 10h
                        mov cx,        3
                       
                        s0:        push cx
                                mov dh,es:;DL为将要显示的颜色
                                mov bx,        0        ;内容偏移地址
                                mov cx,        16        ;内部循环计数
                                        s1:        mov dl,es:        ;把字符串内容逐一写入内存
                                                mov ds:,        dx
                                                inc di
                                                inc bx
                                                loop s1
                                add di,        090h
                                inc si
                                pop cx
                                loop s0
                       
                        mov ax,4c00h
                        int 21h
codesg ends
end start



补充内容 (2012-11-8 09:44):
对比了下答案,还是复杂太多了,
页: [1]
查看完整版本: 关于实验9的代码,跟答案的思路不同,可取吗?