鱼C论坛

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

[汇编作业] 没有用堆栈的实验9

[复制链接]
最佳答案
0 
发表于 2017-8-11 21:56:31 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

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

x
利用BX做了内循环……自鸣得意中 ^^
看了很多解答,觉得偏移地址和电脑屏幕比例有关,自行修改数据段中PY即可。

  1. ASSUME CS:CODE,DS:DATA

  2. DATA SEGMENT
  3.         PY DW 680H,7C0H,900H
  4.         SR DB 'welcome to masm!'
  5.         BG DB 2,24H,71H
  6. DATA ENDS

  7. CODE SEGMENT
  8. START: MOV AX,DATA
  9.                 MOV DS,AX
  10.                 MOV AX,0B800H
  11.                 MOV ES,AX
  12.                 MOV SI,0
  13.                 MOV DI,0
  14.                 MOV CX,16
  15.                 MOV BX,4                                        ;计数三次显示串&同时负责切换行(自下而上)
  16. STRING:MOV AL,BYTE PTR SR[DI]
  17.                 MOV BP,WORD PTR PY[BX]
  18.         MOV ES:BYTE PTR[BP+SI],AL
  19.                 ADD SI,2
  20.                 INC DI
  21.                 LOOP STRING
  22.                 MOV CX,16
  23.                 MOV SI,0
  24.                 MOV DI,0
  25.                 SUB BX,2
  26.                 JNC STRING
  27.             MOV BX,4
  28.                  MOV CX,16
  29.                 MOV SI,0
  30.                 MOV DI,2
  31. BACKGD:INC SI                                                ;显示背景属性
  32.                 MOV AL,BYTE PTR BG[DI]
  33.                 MOV BP,WORD PTR PY[BX]
  34.                  MOV ES:BYTE PTR [BP+SI],AL
  35.                  INC SI
  36.                  LOOP BACKGD
  37.                  MOV CX,16
  38.                  MOV SI,0
  39.                  DEC DI
  40.                  SUB BX,2
  41.                  JNC BACKGD                
  42.                  MOV AX,4C00H
  43.                  INT 21H
  44. CODE ENDS
  45. END START
复制代码
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐上一条 /1 下一条

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号 )

GMT+8, 2018-7-18 07:21

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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