从今天开始学子《intel 汇编语言程序设计》这本书,同时要抽出时间复习王爽的《汇编语言》,每复习完一章,就取做汇编网站上的检测题,
intel 汇编语言程序设计
1.一些术语解释
IA-32(intel architecture),英特尔体系架构,英特尔从486开始采用,也叫x86-32架构
AMD:Advanced micro Devices.AMD 是世界上CPU一大生产商,是INTEL的最大竞争对手
汇编器:把汇编语言源程序转换为机器语言的实用工具程序。
链接器:把编译器创建的多个单独的文件链接成可执行程序的使用工具程序。
调试器:允许在程序运行时单步执行并查看寄存器和内存的内容
16位实地址模式程序:16位实地址模式程序可以在MS-DOS或者MS-Windows的控制台窗口下运行。实地址模式程序也叫实模式程序,使用Intel 8086/8088处理器要求的分段内存模式。
32位保护模式程序:32位保护模式程序可运行在所有32位版本的Microsoft Windows操作系统上,通常比实模式程序更加易于编写和理解。
2汇编语言和机器语言的关系
他们之间的关系是一一对应的关系:即一条汇编语言对应一条机器语言指令
3汇编语言和c++以及java等的关系
c++以及java等高级语言与汇编语言和机器语言的关系是一对多的关系。即一条简单的c++语句会被扩展成多条汇编语言或者机器语言指令。
4汇编语言是可移植的吗?
高级语言和汇编语言的一个重要区别就是移植性。那何为移植?即如果一种语言的程序源代码可以在多种计算机系统上编译并运行,那这种语言就是可移植的。例如一个C++程序能够在任何计算机上编译并运行,除非他引用了某个操作系统特有的系统函数,而java语言则是很好的可移植性,一次编译到处运行,说的就是java了。
汇编语言是不可移植 的,因为汇编语言总是为了特定系列的处理器设计的。每种不同的汇编语言都基于特定系列的处理器。汇编语言指令可能与计算机的体系结构直接对应,或者在执行期间由处理器内部的一段程序进行翻译,这种处理器内部的翻译程序称为微代码解释程序。
5汇编语言的优点:
(1)汇编语言节约内存,适合编写嵌入式程序
(2)汇编语言允许程序员控制程序的几乎每个字节,这可以精确的控制时间并实时相应
(3)许多专用游戏机有严格的内存限制,要求程序在大小和运行速度两方面都要做高度优化。因为汇编语言直接访问计算机硬件,可手动进行速度优化。
(4)设备制造商需要为所销售的设备编写驱动程序(驱动程序是把操作系统通用的命令转换为对特殊硬件的具体细节操作的程序)
6汇编语言的限制
大多数的限制都是源于目标处理器的机器指令集的物理限制