读书人

这段代码可以执行。可结果补台对。解决

发布时间: 2012-02-27 10:00:22 作者: rapoo

这段代码可以执行。。可结果补台对。。
题目的原意是把dataeg段每一行前4个小写字母改成大写
我一步一步跟踪可除了第一行改了,后面的还是老样子。。。好像是ds的数据读的不对
哪位大大有时间帮忙跑跑。。。
assume cs:codesg,ss:stackeg,ds:dataeg

stackeg segment
dw 0,0,0,0,0,0,0,0
stackeg ends

dataeg segment
db '1. display '
db '2. brows '
db '3. replace '
db '4. modify '
dataeg ends

codesg segment
start:mov ax,stackeg
mov ss,ax
mov sp,10h

mov ax,dataeg
mov ds,ax
mov cx,4
mov bx,0
s:push cx
mov si,0
mov cx,4
s0:mov al,[bx+3+si]
and al,11011111b
mov [bx+3+si],al
inc si
loop s0
add bx,16h
pop cx
loop s
mov ax,4c00h
int 21h
codesg ends
end start

[解决办法]
自己动手,丰衣足食!

读书人网 >汇编语言

热点推荐