|
主题 : : 问题7.9 大家来看看哪里错了 [待解决] |
回复[ 10次 ]
点击[ 393次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2008-07-16 13:18 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-02-29 19:24 |
这是目前为止写最长的了~
assume cs:codesg,ss:stacksg,ds:datasg
stacksg segment
dw 0,0,0,0,0,0,0,0
stacksg ends
datasg segment
db '1.display '
db '2.brows '
db '3.replace '
db '4.modify '
datasg ends
codesg segment
start:mov ax,stacksg
mov ss,ax
mov sp,0
mov ax,datasg
mov ds,ax
mov si,0
mov bx,16
mov cx,4
s0:push cx
s:mov ax,[bx+3+si]
and ax,11011111b
mov [bx+3+si],ax
inc si
loop s
pop cx
add bx,16
loop s0
codesg ends
end start | | |
|
|
|
|
[第1楼]
[ 回复时间:2008-07-16 13:20 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-02-29 19:24 |
能编译,能连接~
debug跟踪后~发现只有brows中的R转为大写
另外,想问下,debug里有命令可以一次执行完程序吗? | | |
|
|
|
|
[第2楼]
[ 回复时间:2008-07-16 13:22 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-02-29 19:24 |
|
|
|
|
|
[第3楼]
[ 回复时间:2008-07-16 13:27 ]
[引用]
[回复]
[ top ] | |
荣誉值:405
信誉值:0
注册日期:2008-01-19 14:51 |
|
|
|
|
|
[第4楼]
[ 回复时间:2008-07-16 13:27 ]
[引用]
[回复]
[ top ] | |
荣誉值:405
信誉值:0
注册日期:2008-01-19 14:51 |
|
|
|
|
|
[第5楼]
[ 回复时间:2008-07-16 13:30 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-02-29 19:24 |
|
|
|
|
|
[第6楼]
[ 回复时间:2008-07-16 13:30 ]
[引用]
[回复]
[ top ] | |
荣誉值:405
信誉值:0
注册日期:2008-01-19 14:51 |
楼主的程序还是有问题。这个程序比较简单相信楼主可以独立解决。问题出在内循环设置循环次数那一块。 | | |
|
|
|
|
[第7楼]
[ 回复时间:2008-07-16 14:31 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-02-29 19:24 |
我行了~
原来是si的初始化问题,每次小循环运行完,都要将si初始化
把正确的贴上来~
assume cs:codesg,ss:stacksg,ds:datasg
stacksg segment
dw 0,0,0,0,0,0,0,0
stacksg ends
datasg segment
db '1. display '
db '2. brows '
db '3. replace '
db '4. modify '
datasg ends
codesg segment
start:mov ax,stacksg
mov ss,ax
mov sp,16
mov ax,datasg
mov ds,ax
mov bx,0
mov cx,4
s0:push cx
mov cx,4
mov si,0
s:mov al,[bx+3+si]
and al,11011111b
mov [bx+3+si],al
inc si
loop s
add bx,16
pop cx
loop s0
mov ax,4c00h
int 21h
codesg ends
end start | | |
|
|
|
|
[第8楼]
[ 回复时间:2008-07-16 14:31 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-02-29 19:24 |
|
|
|
|
|
[第9楼]
[ 回复时间:2008-07-23 10:55 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-07-03 16:13 |
|
|
|
|
|
[第10楼]
[ 回复时间:2008-08-07 20:54 ]
[引用]
[回复]
[ top ] | |
荣誉值:5
信誉值:3
注册日期:2008-07-14 19:30 |
sp的值一看到就知道不对的!
强烈建议楼主看书仔细点
还有mov bx,16
一开始的时候bx应该是0,要不然你怎么使用add ax,16呀 | | |