用8086汇编语言输出hello world的程序
谢谢,因为我是为了做报告的,没学过8086的汇编语言,能不能解释下每条语句的意思?我会提高悬赏的...
谢谢,因为我是为了做报告的,没学过8086的汇编语言,能不能解释下每条语句的意思?我会提高悬赏的
展开
4个回答
展开全部
DATA SEGMENT
HW DB "hello world",'$'
;串定义
DATA ENDS
STACK SEGMENT STACK
DB 100 DUP(?)
STACK ENDS
;堆栈段定义
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
EXIT:
MOV AX,4C00H
INT 21H
;返回DOS
START:
MOV AX,DATA
MOV DS,AX
;初始化数据段寄存器
LEA DX,HW
MOV AH,9
INT 21H
;调用中断显示串
;...
JMP EXIT
CODES ENDS
END START
;指定程序入口
HW DB "hello world",'$'
;串定义
DATA ENDS
STACK SEGMENT STACK
DB 100 DUP(?)
STACK ENDS
;堆栈段定义
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
EXIT:
MOV AX,4C00H
INT 21H
;返回DOS
START:
MOV AX,DATA
MOV DS,AX
;初始化数据段寄存器
LEA DX,HW
MOV AH,9
INT 21H
;调用中断显示串
;...
JMP EXIT
CODES ENDS
END START
;指定程序入口
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
data segment
buf db 'hello world$'
data ends
code segment
assume ds:data,cs:code
start:
mov ax,data
mov ds,ax
lea dx,buf
mov ah,9
int 21h
mov ah,4
int 21h
code ends
end start
buf db 'hello world$'
data ends
code segment
assume ds:data,cs:code
start:
mov ax,data
mov ds,ax
lea dx,buf
mov ah,9
int 21h
mov ah,4
int 21h
code ends
end start
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
;-----------------------------------------------------
;数据段定义。即存放数据的地方
;-----------------------------------------------------
data segment use16
buf db 'hello,world',0dh,0ah,'$'
data ends
;---------------------------------------------
;代码段,是程序开始执行的地方
;---------------------------------------------
code segment use16
assume cs:code,ds:data
beg: mov ax,data ;加载数据段,这样在数据段中定义的数据'hello,world'才可以在代码段中
;使用
mov ds,ax
mov ah,9 ;调用21中断的9号服务程序,用于输出一个字符串
mov dx,offset buf ;这是串的首地址,只有将它传给寄存器dx,才能实现字符串的输出
int 21h
mov ah,4ch ;程序结束时,要返回dos,因而必须调用21中断中的4c号服务程序
int 21h
code ends
end beg
;数据段定义。即存放数据的地方
;-----------------------------------------------------
data segment use16
buf db 'hello,world',0dh,0ah,'$'
data ends
;---------------------------------------------
;代码段,是程序开始执行的地方
;---------------------------------------------
code segment use16
assume cs:code,ds:data
beg: mov ax,data ;加载数据段,这样在数据段中定义的数据'hello,world'才可以在代码段中
;使用
mov ds,ax
mov ah,9 ;调用21中断的9号服务程序,用于输出一个字符串
mov dx,offset buf ;这是串的首地址,只有将它传给寄存器dx,才能实现字符串的输出
int 21h
mov ah,4ch ;程序结束时,要返回dos,因而必须调用21中断中的4c号服务程序
int 21h
code ends
end beg
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询