汇编语言(第三版)-- 实验9

编程:在屏幕中间分别显示绿色,绿底红色,白底蓝色的字符串'welcome to masm!'


汇编语言(第三版)-- 实验9_第1张图片
汇编语言(第三版)-- 实验9_第2张图片
汇编语言(第三版)-- 实验9_第3张图片
汇编语言(第三版)-- 实验9_第4张图片
分析:

绿色字符属性:00000010B -> 2H
绿底红色字符属性:00100100 -> 24H
白底蓝色字符属性:01110001B -> 71H
换行偏移:80 * 2 = 160

完整代码:
assume cs:code,ds:datasg

datasg segment
  db 'welcome to masm!'
datasg ends

code segment

start: mov ax,datasg
       mov ds,ax

       mov ax,0b800h
       mov es,ax
       mov bx,0
       mov si,0
       mov cx,16

    s: mov al,ds:[bx]
       mov es:[si],al               # 第一行
       mov es:[si + 0A0h],al        # 第二行
       mov es:[si + 140h],al        # 第三行
       
       mov al,02h                   # 绿色
       mov es:[si +1],al
       mov al,24h                   # 绿底红色
       mov es:[si + 0A1h]
       mov al,71h                   # 白底蓝色
       mov es:[si + 141h]    

       inc bx
       add si,2

       loop s

       mov ax,4c00h
       int 21h

code ends
end start

你可能感兴趣的:(汇编语言(第三版)-- 实验9)