汇编语言入门(一)

学习汇编语言以 Intel 8086 CPU 为基础会更容易掌握。

要知道,微型计算机的字长与微处理器的寄存器位数有关。

学习汇编语言我们会用到十六进制(H)的数据形式,要使自己尽快习惯用十六进制来思维。在汇编语言中,数值后面分别用字母B、H、D代表二进制(Binary)、十六进制(Hexadecimal)、十进制数(Decimal)(十进制数可以省略 D)。

在计算机中还规定采用字节、字、双字等单位来表示数据。

在汇编语言中,内存是非常重要的学习内容。我们先要对内存地址和存储单元的概念进行学习。

对存储单元的标识可以用物理地址或逻辑地址表示。

(1)物理地址

物理地址是内存单元的真实地址,存储单元的物理地址是唯一的。

Intel 8086 CPU 有 20 根地址线,因此其存储空间可达 2 的 20 次方 = 1 M 个字节单元(1MB)。地址都是从 0 开始的,在 20 位地址线的存储空间中采用十六进制表示的物理地址范围是 00000H ~ FFFFFH。

(2)逻辑地址

逻辑地址是用户编程时使用的地址,分为段地址和偏移地址两部分。

在 8086 汇编语言中,把内存地址空间划分为若干逻辑段,每段由一些存储单元构成,每段最大为 65536 个字节单元(0 号单元~65535 号单元 0000H~FFFFH)。用段地址指出是哪一段,偏移地址标明是该段中的哪个单元。段地址和偏移地址都是 16 位二进制数。

逻辑地址的形式:段地址:偏移地址。

(3)逻辑地址转换为物理地址

用户编程时采用的逻辑地址在 CPU 执行程序时都要转换成实际的物理地址,这个转换过程是由 CPU 中的地址加法器自动完成的。

转换时先将 16 位的段地址左移 4 位,相当于乘以 16 或十六进制的 10H,再和偏移地址相加。转换公式为:

物理地址 = 段地址 × 10H + 偏移地址

例:若某单元的逻辑地址为 0001:0002H,其物理地址 = 0001H × 10H + 0002H = 00012H;另一单元的逻辑地址为 3020:055AH,其物理地址 = 3020H × 10H + 055AH = 3075AH。

存储器逻辑分段类型如下:

在 DOS 操作系统和 Windows 操作系统中,都提供了调试工具 DEBUG。

DEBUG 是为汇编语言设计的一种调试工具,它通过单步、设置断点等方式为程序员提供了非常有效的调试手段。利用它可以观察和修改 CPU 的寄存器、内存单元;可以跟踪程序的运行,发现程序的错误。

DEBUG 命令有 20 多个,我们主要学习最常用的命令。

简单的 DOS 命令:

注意:DOS 和 DEBUG 命令都支持不区分大小写。

展开阅读全文

页面更新:2024-05-16

标签:汇编语言   寄存器   微处理器   子目录   位数   字节   指令   单元   逻辑   入门   命令   内存   地址   物理地址   程序   数据   体育

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top