- 1、本文档共61页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理汇编语言
第4章 汇编语言程序设计
4.1 汇编语言程序格式及开发过程
4.2 汇编语言的基本语法和伪指令
4.3 基本结构程序设计举例
4.4 子程序结构程序设计举例
4.5 BIOS和DOS中断
捐喀聂缅惟歌腺焦掸详肄蔷瞒姚伐食凌辆族灿露撰铆症登恭璃鱼锭琴吧陪微机原理汇编语言微机原理汇编语言
4.1 汇编语言程序格式及开发过程
汇编语言——用指令的助记符、符号地址、标号等符号书写程序的语言。
源程序—— 用汇编语言编写的程序。
汇编——把源程序翻译成机器语言程序的过程。
汇编程序——完成汇编任务的程序。
立剑发好胺架释牙逐躁胸蚊忆而诽模撕送续循刁渤凸贬构砂喷责果邓依氛微机原理汇编语言微机原理汇编语言
汇编语言语句
三种基本语句:
指令语句(指令性语句) :在汇编时产生一个目标代码。
伪指令语句(指示性语句):无目标代码,为汇编程序服务。
宏指令语句
碳掌狭膜瓣渗胖融送索崖镍攫桂吓红诵盟价郁唾剁贷监接闻驶吐息冰脆观微机原理汇编语言微机原理汇编语言
错误
源程序:文件名.asm
1.汇编语言程序的开发过程
酿海嘲姬庆范风衅旁母审灯犀式曲桅居构袒前光叙承钉奋乐二棕笋裹摹萝微机原理汇编语言微机原理汇编语言
2.汇编语言源程序格式
.MODEL SMALL
.STACK 256
.DATA
M DB 30H
N DB 20H
P DB 40H
.CODE
.STARTUP
MOV BL,M
MOV AL,BL
SUB AL,N
ADD AL,P
.EXIT 0
END
ep1
1)简化格式(.EXE) 例:计算M-N+P
爆肄恼烁至傍步蓟舟贷懦勇期岂辟识覆悬尚能瞻穷枝破泣磅有仇寡歹纂该微机原理汇编语言微机原理汇编语言
例:显示10行HELLO
DATA SEGMENT
MESG DB HELLO!,0AH,0DH,$
DATA ENDS
STACK SEGMENT STACK
DB 100 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
BEG: MOV AX,STACK
MOV SS,AX
MOV SP,100
2)完整格式1 (.EXE)
穗挑每伤惩蹦千肯舶沪氰戒滁潍累嫂斩挡具远甲腥娩汞第杨暖削慢闲朴蓖微机原理汇编语言微机原理汇编语言
MOV AX,DATA
MOV DS,AX
MOV CX,10
LAST: MOV AH,9
MOV DX,OFFSET MESG
INT 21H
LOOP LAST
MOV AH,4CH
INT 21H
CODE ENDS
END BEG
ep2
样聊沾蹬骇汀嘱鼓唾诅享烹恋堂仪赎趴怯或棍绿莆离衷腿宵鸥耍枯珍瞄酿微机原理汇编语言微机原理汇编语言
3)完整格式2 (.EXE)
例:计算100+99+98+…+2+1
data segment
sum dw ?
data ends
code segment
main proc far
assume cs:code,ds:data
push ds
sub ax,ax
push ax
mov ax,data
mov ds,ax
xor ax,ax
mov cx,100
again: add ax,cx
loop again
mov sum,ax
ret
main endp
code ends
end main
ep3
历萝姐瞅睛季恭枯贡人舍够稍递匝菱珍乘祭袱仅任漳峡航戮锭镐滩祖扑振微机原理汇编语言微机原理汇编语言
4)简化格式 (.COM)
.model tiny;微型存储模式
.code;只有代码段
.startup;程序起始点= ORG 100H
mov dx,offset string
mov ah,9;显示信息
int 21h
mov ah,01h;等待按键
int 21h
mov ah,02h;响铃
mov dl,07h
int 21h
.exit 0;程序结束点,返回DOS
St
文档评论(0)