|
主题 : : 我用汇编语言写了一个小程序,请大家找错! [待解决] |
回复[ 6次 ]
点击[ 567次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2013-03-11 19:31 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2013-03-10 12:38 |
assume cs:code
code segment
mov ax,0020h
mov es,ax
mov bx,0
s:mov al,cs:[bx]
mov mov es:[bx],al
inc bx
loop s
mov ax,4c00h
int 21h
编译时显示有1 warning errors
2 severe errors | | |
|
|
|
|
[第1楼]
[ 回复时间:2013-03-16 22:41 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2013-03-16 22:40 |
assume cs:code
code segment
mov ax,0020h
mov es,ax
mov bx,0
s:mov al,cs:[bx]
mov es:[bx],al
inc bx
loop s
mov ax,4c00h
int 21h
code ends
end
你对比下 | | |
|
|
|
|
[第2楼]
[ 回复时间:2013-04-05 23:15 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-09-11 22:46 |
|
|
|
|
|
[第3楼]
[ 回复时间:2013-04-09 13:35 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-18 20:29 |
对ES的0020H段进行写操作,可是你确定那个地址允许写操作? | | |
|
|
|
|
[第4楼]
[ 回复时间:2013-07-16 18:35 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2013-07-14 15:44 |
回复:[第3楼]
------------------
那段空间是可以的,安全空间0:200h~~0:2ffh | | |
|
|
|
|
[第5楼]
[ 回复时间:2014-10-18 08:35 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2014-09-20 15:47 |
回复:[第2楼]
------------------
在用debug调试时cx是有值的,是程序的长度。p103 | | |
|
|
|
|
[第6楼]
[ 回复时间:2015-01-13 19:53 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2015-01-04 21:38 |
assume cs:code
code segment
mov ax,0020h
mov es,ax
mov bx,0
S: mov al,cs:[bx]
mov es:[bx],al
inc bx
loop S
mov ax,4c00h
int 21h
code ends
end
cx值是不需要设的,debug时候默认是程序的长度。安全空间0:200h~~0:2ffh,也没有问题。这段代码经编译、链接、debug都没有问题。楼主找这么改就行啦。这段代码意思就是:在20:0 ~ 20:16这块区域用代码段cs:0 ~ CS:16填充。也就是把代码段全部内容复制到20:0 ~ 20:16这块区域(包括了mov ax,4c00h ;int 21h 这2句话) | | |