鱼C论坛

 找回密码
 立即注册
查看: 2145|回复: 4

[争议讨论] 这个程序为什么看不到结果

[复制链接]
发表于 2012-10-25 22:10:07 | 显示全部楼层 |阅读模式

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

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

x
assume cs:code,ss:stack,ds:data

stack segment stack
db 02h,24h,71h             ;属性字节存放在堆栈段,方便用bp索引,本程序不用担心堆栈被覆盖
db 13 dup(0)
stack ends

data segment
db 'welcome to masm!'       ;字符串,用si索引 0~15
data ends

code segment

start: mov ax,0b800h
           mov es,ax            ;初始化ES段,位于显存空间
          
              mov ax,stack         
           mov ss,ax
           mov sp,16            ;初始化栈段
          
           mov ax,data
           mov ds,ax            ;初始化数据段
          
           mov bx,1984          ;bx的起始地址,第12行32列
           mov bp,0             ;bp初始化,指向数据段第一个属性字节
           mov cx,3             ;外层循环变量
s1:    push cx                    ;入栈保护cx
           mov si,0             ;si指向第0个字符
           mov di,0
           mov ah,[bp]          ;将属性字节暂存到ah
                     
           mov cx,16
s2:    mov al,[si]
           mov es:[bx+di],al    ;通过al,装入ascii码字节内容
           inc di               ;di+1,指向属性字节
           mov es:[bx+di],ah    ;装入属性字符
           inc di               ;再次di+1,指向下一个字符的ascii码字节
           inc si               
           loop s2              ;内层循环,对一行写入16列          
          
           inc bp               ;bp+1,对应下一行属性字节
           add bx,160           ;bx指向下一行
           pop cx               ;cx出栈
           loop s1              ;外层循环
          
           mov ax,4c00h
           int 21h
code ends
end start
   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-10-25 22:10:59 | 显示全部楼层
用debug的g命令跳到程序出口,就能看到显示结果
如果直接执行,直接返回dos,什么都看不见

why?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-10-26 04:57:06 | 显示全部楼层
根系统有一定关系,直接运行可能系统进行了清屏操作,,我在dosbox下显示了! QQ截图20121026050410.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-10-26 13:22:38 | 显示全部楼层
哦 谢谢楼上的,是不是win7不适合玩汇编,
老出错,害我改程序
这个程序我改了2个小时,还是显示不出来
看了你的图,才知道我的程序没问题,真是郁闷
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-10-26 20:01:44 | 显示全部楼层
因为运行完了,运行到程序返回就退出咯。
你可以这样
mov ah,7
int 21h   ;//暂停
mov ax,4c00h
int 21h
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-18 12:36

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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