鱼C论坛

 找回密码
 立即注册
查看: 1782|回复: 0

[汇编作业] 实验九.打印三行不同背景颜色的‘hello world!’

[复制链接]
发表于 2018-1-17 16:56:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

        我用了两层loop循环来实现,代码如下:

  1. assume cs:code,ss:stack

  2. data segment
  3. db 'hello word!'
  4. db 02h,24h,71h
  5. db '!'
  6. data ends

  7. stack segment
  8.    dw 6 dup(0)
  9. stack ends

  10. code segment
  11. start:

  12.                 mov ax,data
  13.                 mov ds,ax
  14.                 mov ax,0b800h
  15.                 mov es,ax
  16.                 mov ax,stack
  17.                 mov ss,ax
  18.                 mov sp,12
  19.                 mov cx,3
  20.                
  21.                 mov bx,0  
  22.                 mov si,0  ;string index
  23.                 mov di,0  ;segment address
  24.                 mov bp,0  ;display code
  25.         s:       
  26.                 push cx
  27.                 mov dl,ds:[11+bp]
  28.                
  29.                 mov cx,11
  30.         s1:
  31.                 mov al,[si]
  32.                 mov es:[bx+di+7d0h],al
  33.                
  34.                 mov es:[bx+di+7d1h],dl
  35.                
  36.                 inc si
  37.                 add bx,2
  38.                 loop s1
  39.                
  40.                 mov si,0
  41.                 mov bx,0
  42.                 add di,0a0h
  43.                 inc bp
  44.                
  45.                 pop cx
  46.                
  47.                 loop s
  48.                
  49.                 mov ax,4c00h
  50.                 int 21h

  51. code ends

  52. end start
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-18 16:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表