汇编语言实验5(5)
本帖最后由 tangqy 于 2012-1-29 11:53 编辑实验五第(5)题,我写代码如下:
*********************************************************************
assume cs:code
a segment
db 1,2,3,4,5,6,7,8
a ends
b segment
db 1,2,3,4,5,6,7,8
b ends
d segment
db 0,0,0,0,0,0,0,0
d ends
code segment
start: mov ax,a
mov ds,ax ;定义A段地址
mov ax,d
mov es,ax ;定义c段地址
mov bx,0 ;BX=0
mov cx,8 ;循环8次
s:mov al,ds:
mov es:,al
inc bx
loop s ;依次将A段数据移入C段
mov ax,b
mov ds,ax ;定义B段地址
mov ax,d
mov es,ax ;定义C段地址
mov bx,0 ;BX=0
mov cx,8 ;循环8次
s0:mov al,ds:
add es:,al
inc bx
loop s0 ;依次将B段数据加入C段
mov ax,4c00h
int 21h
code ends
end start
******************************************************************************
按上述代码,运行后结果是正确的,可是我有个疑问,就是书上原本三个段分别是A、B、C,而如果我按A,B,C设定,编译时是报C段错误的,我常试将C段改成D段,就OK了,想知道这是为什么??难道第三个段以C开头命名,编译器会把它与CODE混淆???
“c”是MASM的保留字符,不能用 这个当然要支持 Seely 发表于 2012-1-29 20:47 static/image/common/back.gif
“c”是MASM的保留字符,不能用
但书上用的确实是C,这个小甲鱼没有讲,难道是忘记了?;P 我去,调了几个小时了,还以为是我64位机的问题,坑爹啊!!!!!!!!!!!!!!!!! Seely 发表于 2012-1-29 20:47 static/image/common/back.gif
“c”是MASM的保留字符,不能用
masm 5.0可以编译 6.15不能编译 书上用的是5.0 所以c可以用的 6.15masm的c是有特殊用途的,不能用。5.0的masm就可以用了。编译可以通过
页:
[1]