无法显示结果
assume cs:code,ds:data,ss:stackdata segment
db 'welcome to masm!'
db02h,24h,71h
data ends
stack segment
dw 8 dup(0)
stack ends
code segment
start : mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax
mov sp,10h
mov ax,0b872h
mov bx,0
mov cx,3
s:push cx
push ax
push bx
mov es,ax
mov si,0
mov di,0
mov cx,10h
s1:mov al,ds:
mov es:,al
add si,2
inc di
loop s1
pop bx
mov al,ds:
mov di,1
inc bx
mov cx,10h
s2:
mov es:,al
add si,2
loop s2
pop ax
add ax,0ah
pop cx
loop s
mov ax,4c00h
int 21h
code ends
end start
这贴子,很晕。:dizzy: Mr.C 发表于 2011-10-23 13:11 static/image/common/back.gif
这贴子,很晕。
为什么啊
1、程序要实现什么?
2、编译是否通过
3、如果通过,结果如何?
4、自己的分析 tsembrace 发表于 2011-10-23 14:18 static/image/common/back.gif
1、程序要实现什么?
2、编译是否通过
3、如果通过,结果如何?
就是现实welcome to the masm!用几种不同的字体颜色,我编译通过了,就是运行的时候总跳没
本帖最后由 等雨 于 2011-10-23 14:36 编辑
你的第2个循环少了mov si,1,找到奇地址添加颜色,在s2的上面加mov si,1就好了 等雨 发表于 2011-10-23 14:35 static/image/common/back.gif
你的第2个循环少了mov si,1,找到奇地址添加颜色,在s2的上面加mov si,1就好了
我这个代码粘贴的时候有点问题,我下面用的是di,我刚才发现了,改过来了,还是不对呀
是不是运行程序的时候一闪过去了,那用模拟8086cpu的软件就看见了,我刚传到网站上 等雨 发表于 2011-10-23 14:41 static/image/common/back.gif
是不是运行程序的时候一闪过去了,那用模拟8086cpu的软件就看见了,我刚传到网站上
是啊,我下一个看看去
本帖最后由 tsembrace 于 2011-10-23 14:44 编辑
assume cs:code,ds:data,ss:stack
data segment
db 'welcome to masm!'
db02h,24h,71h
data ends
stack segment
dw 8 dup(0)
stack ends
code segment
start : mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax
mov sp,10h
mov ax,0b872h
mov bx,0
mov cx,3
s:push cx
push ax
push bx
mov es,ax
mov si,0
mov di,0
mov cx,10h
s1:
mov al,ds:
mov es:,al
add si,2
inc di
loop s1 ;第一次循环将字符值赋给指定区域
pop bx
mov al,ds: ;调出预设的第一行字符属性值,传给al
;mov di,1 ;di=1啥意思?这句无意义,删除--------------------------
inc bx ;bx=2,使下次循环指向第二行的字符属性值;但这句放在s2循环结束的后面更合适一些
mov cx,10h
mov si,1
s2:
mov es:,al ;注意此时si通过s1循环已经不是在起始位置了,所以要加上面这句-------------------
add si,2
loop s2
pop ax
add ax,0ah
pop cx
loop s
mov ax,4c00h
int 21h
code ends
end start tsembrace 发表于 2011-10-23 14:43 static/image/common/back.gif
好像是需要一个模拟8086处理器,我这个总是一闪而过,刚才那个问题我也发现了,不过改完还是一跳而过 等雨 发表于 2011-10-23 14:41 static/image/common/back.gif
是不是运行程序的时候一闪过去了,那用模拟8086cpu的软件就看见了,我刚传到网站上
不好意思啊,我不太会用啊,怎么个用法
本帖最后由 tsembrace 于 2011-10-23 14:58 编辑
bitianchi 发表于 2011-10-23 14:48 static/image/common/back.gif
好像是需要一个模拟8086处理器,我这个总是一闪而过,刚才那个问题我也发现了,不过改完还是一跳而过
我改后试了没问题,除了加mov si,1那句外,你上面那句mov di,1是干嘛用的?没用就删除掉~ 本帖最后由 等雨 于 2011-10-23 14:58 编辑
先解压,点icon图标注册,在点emu8086图标打开,然后用8086软件打开你的软件,运行,,可以加我qq聊944458356 路过。。 顶一下。。。。 厉害!强~~~~没的说了! 10楼的厉害!!!!!
页:
[1]