关于汇编程序hello world代码的详细说明,需要解释一下每一段代码的意思,谢谢。

DATASEGMENTBUFDB'Hello,world!$'DATAENDSSTACKSEGMENTSTACK'STACK'DW36DUP(?)STACKENDSCOD... DATA SEGMENT
BUF DB 'Hello, world !$'
DATA ENDS
STACK SEGMENT STACK 'STACK'
DW 36 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET BUF
MOV AH,9
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
展开
 我来答
匿名用户
2013-12-15
展开全部
SEGMENT表示把代码分成不同的段,不同的段保存在不同的地址中。DATA SEGMENT表示这是数据段用来存储数据用的,STACK 是堆栈段,CODE是代码段,MOV AX,DATA 表示将DATA的段地址传递给AX,DS是段寄存器,MOV DX,OFFSET BUF是将BUF所代表的地址传递到DX中,AX,DX是通用寄存器。INT 21H,INT 是软中断,21H是函数的入口地址,至于前面的MOV AH,9是函数的参数。你查一下INT 21H的功能就可以知道参数是9的意思就是显示DS:DX中所指向的字符串,4CH是带返回码结束。
匿名用户
2013-12-15
展开全部
DATA SEGMENT
BUF DB 'Hello, world !$'
DATA ENDS
将“Hello,world!”放到data segment里面 ‘$’为字符串结尾标志,标志为buf
MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET BUF
将ds=data的段地址 dx=buf的偏移地址
MOV AH,9 INT 21H
ah=9中断 输出ds:dx字符串 这个查8086中断表可以知道的
MOV AH,4CH
INT 21H
ah=4c中断 程序结束
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式