- 0
- 0
- 约1.21万字
- 约 13页
- 2018-12-14 发布于浙江
- 举报
基于单片机语言入门教程
入门教程2007-04-2922:04 对初学者而言,汇编的许多命令太复杂,往往学习很长时间也写
不出一个漂漂亮亮的程序,以致妨碍了我们学习汇编的兴趣,不少人就此放弃。所以我个人
看法学汇编,不一定要写程序,写程序确实不是汇编的强项,大家不妨玩玩DEBUG,有时
CRACK 出一个小软件比完成一个程序更有成就感 (就像学电脑先玩游戏一样)。某些高深
的指令事实上只对有经验的汇编程序员有用,对我们而言,太过高深了。为了使学习汇编语
言有个好的开始,你必须要先排除那些华丽复杂的命令,将注意力集中在最重要的几个指令
上 (CMPLOOPMOVJNZ……)。但是想在啰里吧嗦的教科书中完成上述目标,谈何容易,
所以本人整理了这篇超浓缩 (用WINZIP、WINRAR…依次压迫,嘿嘿!)教程。大言不惭
的说,看通本文,你完全可以“不经意”间在前辈或是后生卖弄一下DEBUG,很有成就感
的,试试看!那么――这个接下来呢?―― Herewego!(阅读时看不懂不要紧,下文必有
分解)
因为汇编是通过CPU 和内存跟硬件对话的,所以我们不得不先了解一下CPU 和内存:(关
于数的进制问题在此不提)
CPU是可以执行电脑所有算术╱逻辑运算与基本 I/O 控制功能的一块芯片。一种汇编语
言只能用于特定的CPU。也就是说,不同的CPU 其汇编语言的指令语法亦不相同。个人电
脑由1981年推出至今,其CPU 发展过程为:8086→80286→80386→80486→PENTIUM
→……,还有AMD、CYRIX 等旁支。后面兼容前面CPU 的功能,只不过多了些指令 (如
多能奔腾的MMX 指令集)、增大了寄存器 (如386 的32 位EAX)、增多了寄存器 (如486
的FS)。为确保汇编程序可以适用于各种机型,所以推荐使用8086汇编语言,其兼容性最
佳。本文所提均为8086汇编语言。寄存器 (Register)是CPU 内部的元件,所以在寄存器
之间的数据传送非常快。用途:1.可将寄存器内的数据执行算术及逻辑运算。2.存于寄存器
内的地址可用来指向内存的某个位置,即寻址。3.可以用来读写数据到电脑的周边设备。8086
有8个8位数据寄存器,这些8位寄存器可分别组成 16位寄存器:AHAL=AX:累
加寄存器,常用于运算;BHBL=BX:基址寄存器,常用于地址索引;CHCL=
CX:计数寄存器,常用于计数;DHDL=DX:数据寄存器,常用于数据传递。为了
运用所有的内存空间,8086 设定了四个段寄存器,专门用来保存段地址:CS (Code
Segment):代码段寄存器;DS(Data Segment):数据段寄存器;SS(Stack Segment):
堆栈段寄存器;ES (Extra Segment):附加段寄存器。当一个程序要执行时,就要决定程
序代码、数据和堆栈各要用到内存的哪些位置,通过设定段寄存器 CS,DS,SS 来指向这
些起始位置。通常是将DS 固定,而根据需要修改CS。所以,程序可以在可寻址空间小于
64K 的情况下被写成任意大小。 所以,程序和其数据组合起来的大小,限制在DS 所指的
64K 内,这就是COM 文件不得大于64K 的原因。8086 以内存做为战场,用寄存器做为军
事基地,以加速工作。除了前面所提的寄存器外,还有一些特殊功能的寄存器:IP (Intruction
Pointer):指令指针寄存器,与CS配合使用,可跟踪程序的执行过程;SP (Stack Pointer):
堆栈指针,与SS配合使用,可指向目前的堆栈位置。BP (BasePointer):基址指针寄存器,
可用作SS 的一个相对基址位置;SI (Source Index):源变址寄存器可用来存放相对于DS
段之源变址指针;DI (Destination Index):目的变址寄存器,可用来存放相对于 ES 段之目
的变址指针。还有一个标志寄存器FR (Flag Register),有九个有意义的标志,将在下文用
到时详细说明。
内存是电脑运作中的关键部分,也是电脑在工作中储存信息的地方。内存组织有许多可存放
数值的储存位置,叫 “地址”。8086地址总线有20位,所以CPU 拥有达 1M 的寻址空间,
这也是DOS 的有效控制范围,而8086 能做的运算仅限于处理16位数据,即只有0 到64K,
所以,必须用分段寻址才能控制整个内存地址。完整的20 位地址可分成两部份:1.段基址
(Segment):16位二进制数后面加上四个二进制0,即一个16进制0,变成20位二进制数,
可设定 1M 中任何一个64K 段,通常记做 16 位二进制数;2.偏移量(Offse
您可能关注的文档
最近下载
- 2025年河北省中考数学真题.docx VIP
- 6.3.2 世界上最大的黄土堆积区—黄土高原(第2课时2023-2024学年八年级下册地理精品教学课件(人教版)+.pptx VIP
- 安源光伏特玻璃厂带式输送机投标书.doc VIP
- 压缩热再生吸附式干燥机.ppt VIP
- 中医执业医师中医基础试题(一)(中医执业医师中医基础考试卷).doc VIP
- 中医执业医师考试中医基础模拟试题(2)(中医执业医师中医基础考试卷).doc VIP
- 吊耳计算对照表.pdf VIP
- 香港中医执业医师考试试题题库.pdf
- 高中语文选择性必修上课本原文、翻译.pdf VIP
- SY_T6592-2016固井质量评价方法.docx VIP
原创力文档

文档评论(0)