汇编中的link文件怎么写

汇编中的link文件怎么写,第1张

汇编中的link文件使用程序代码写。汇编中点击打开文件先写标题,主槐做要说明写文件的缘由,关于所写的事情。再写正文部分,要求简洁明了,有针对性。汇编是指汇编语言,汇编程序。把汇编铅戚衡语言翻译成机器语言的过程称仔山为汇编。

分类: 电脑/网络 >>程序设计 >>其他编程语言

问题描述:

PROGRAM TITLE GOES HERE-ex_movs

***************************************************

data segment define data segment

source_buffer db 40 dup('a')

data ends

***************************************************

extra segment define extra segment

dest_buffer db 40 dup(?)

extra ends

***************************************************

code segment define code segment

---------------------------------------------------

main proc far

assume cs:code,ds:data,es:extra

start:

push ds

sub ax,ax

push ax

mov ax,data

mov ds,ax

lea si,source_buffer

lea di,dest_buffer

cld

mov cx,40

rep mov ***

ret

main endp

code ends

end start

输入c:>ex_movs.exe

结果得到--->NTVDM cpu 遇到无效的指令

CS:0DE5 IP:0028 OP:FF FF FF FF FF AO 选择关闭拿姿终止应用程序

如果能运行的话

怎么看到运行迹虚的结果?

请高手指教~

解析:

我没试过你的程序,不过很有可能是你的es也没有赋值姿敏燃,需要像ds那样赋值。

这样写无法看到结果,可以考虑打印输出你想看得地址的值,不难写。还有一种方法就是用debug模式看,命令行下面输入debug <filename>就行了,具体命令和用法可以参考help。

首先你在asm程序中如下定义堆栈:

stack segment stack

dw 0,0,0,0,0,0

stack ends

注意:segment后面要加stack

也可以这蔽纤样定义:

a segment stack

dw 0,0,0,0,0

a ends

这样明白了么?

另外你用link程序的时耐中候可以这样昌并山写

link 2-22.asm

一个分号省了大事。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12311339.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存