【书】汇编语言 第2版 笔记一

【书】汇编语言 第2版 笔记一




汇编语言是各种CPU提供的机器指令的助记符的集合,人们可以用汇编语言直接控制硬件系统进行工作。
汇编语言是很多相关课程(如数据结构、操作系统、微机原理等)的重要基础。

汇编语言是和具体的处理器相联系的,每一种微处理器的汇编语言都不一样。

深入理解机器工作的基本原理
底层编程意识和思想。

------------------------------------
第一章 基础知识

《微机原理与接口》关于PC机及CPU物理结构和编程结构的研究。
《组成原理》关于计算机一般的结构、功能、性能的研究。
《汇编》利用硬件系统的编程结构和指令集有效灵活地控制系统进行工作。

芯片、CPU、一种微处理器

计算机是指由CPU和其他受CPU直接或间接控制的芯片、器件、设备组成的计算机系统。

CPU是计算机的核心部件,它控制整个计算机的运作并进行运算。

汇编语言的核心是汇编指令,它决定了汇编语言的特性。

微机存储器的容量是以字节为最小单位来计算的。对于拥有128个存储单元的存储器,我们可以说,它的容量是128字节。

CPU要想进行数据的读写,必须和外部器件(标准的说法是芯片)进行3类信息的交互: 
 存储单元的地址(地址信息)。 
 器件的选择,读或写的命令(控制信息)。 
 读或写的数据(数据信息)。

电子计算机能处理、传输的信息都是电信号,电信号当然要用导线传送。在计算机中专门有连接CPU和其他芯片的导线,通常称为总线。总线从物理上来讲,就是一根根导线的集合。根据传送信息的不同,总线从逻辑上又分为3类,即地址总线、控制总线和数据总线。


(1) CPU通过地址线将地址信息3发出。 
(2) CPU通过控制线发出内存读命令,选中存储器芯片,并通知它,将要从中读取数
据。 
(3) 存储器将3号单元中的数据08通过数据线送入CPU。


CPU是通过地址总线来指定存储器单元的。地址总线上能传送多少个不同的信息,CPU就可以对多少个存储单元进行寻址。

数据总线的宽度决定了CPU和外界的数据传送速度。8根数据总线一次可传送一个8位二进制数据(即一个字节)。16根数据总线一次可传送2个字节。

CPU对外部器件的控制是通过控制总线来进行的。在这里控制总线是个总称,控制总线是一些不同控制线的集合。有多少根控制总线,就意味这CPU提供了对外部器件的多少种控制。所以,控制总线的宽度决定了CPU对外部器件的控制能力。  
前面所讲的内存读或写命令是由几根控制线综合发出的,其中有一根名为读信号输出控制线负责由CPU向外传送读信号,CPU向该控制线上输出低电平表示将要读取数据;有一根名为写信号输出的控制线则负责传送写信号。

1.1节~1.10节  小  结 
(1) 汇编指令是机器指令的助记符,同机器指令一一对应。 
(2) 每一种CPU都有自己的汇编指令集。 
(3) CPU可以直接使用的信息在存储器中存放。 
(4) 在存储器中指令和数据没有任何区别,都是二进制信息。 
(5) 存储单元从零开始顺序编号。 
(6) 一个存储单元可以存储8个bit(用作单位写成“b”),即8位二进制数。 
(7) 1 B=8 b  1 KB=1024 B  1 MB=1024 KB  1 GB=1024 MB。 
(8) 每一个CPU芯片都有许多管脚,这些管脚和总线相连。也可以说,这些管脚引出总线。一个CPU可以引出三种总线的宽度标志了这个CPU的不同方面的性能: 
地址总线的宽度决定了CPU的寻址能力; 
数据总线的宽度决定了CPU与其他器件进行数据传送时的一次数据传送量; 
控制总线的宽度决定了CPU对系统中其他器件的控制能力。 
 
===================================
第二章 寄存器

cpu由运算器、控制器、寄存器等器件构成。

1.

2.


3.

4.

5.

6.

7.

8.


9.

10.


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这是一本关于汇编的电子,制作精良,内附有大量彩图,希望能给想学汇编的朋友带来帮助.第1章 预备知识 1.1 汇编语言的由来及其特点   1 机器语言  2 汇编语言  3 汇编程序  4 汇编语言的主要特点  5 汇编语言的使用领域  1.2 数据的表示和类型   1 数值数据的表示  2 非数值数据的表示  3 基本的数据类型  1.3 习题 第2章 CPU资源和存储器 2.1 寄存器组   1 寄存器组  2 通用寄存器的作用  3 专用寄存器的作用  2.2 存储器的管理模式   1 16位微机的内存管理模式  2 32位微机的内存管理模式  2.3 习题 第3章 操作数的寻址方式 3.1 立即寻址方式 3.2 寄存器寻址方式 3.3 直接寻址方式 3.4 寄存器间接寻址方式 3.5 寄存器相对寻址方式 3.6 基址加变址寻址方式 3.7 相对基址加变址寻址方式 3.8 32位地址的寻址方式 3.9 操作数寻址方式的小结 3.10 习题 第4章 标识符和表达式  4.1 标识符  4.2 简单内存变量的定义   1 内存变量定义的一般形式  2 字节变量  3 字变量  4 双字变量  5 六字节变量  6 八字节变量  7 十字节变量  4.3 调整偏移量伪指令   1 偶对齐伪指令  2 对齐伪指令  3 调整偏移量伪指令  4 偏移量计数器的值  4.4 复合内存变量的定义   1 重复说明符  2 结构类型的定义  3 联合类型的定义  4 记录类型的定义  5 数据类型的自定义  4.5 标号  4.6 内存变量和标号的属性   1 段属性操作符  2 偏移量属性操作符  3 类型属性操作符  4 长度属性操作符  5 容量属性操作符  6 强制属性操作符  7 存储单元别名操作符  4.7 表达式   1 进制伪指令  2 数值表达式  3 地址表达式  4.8 符号定义语句   1 等价语句  2 等号语句  3 符号名定义语句  4.9 习题 第5章 微机CPU的指令系统  5.1 汇编语言指令格式   1 指令格式  2 了解指令的几个方面  5.2 指令系统   1 数据传送指令  2 标志位操作指令  3 算术运算指令  4 逻辑运算指令  5 移位操作指令  6 位操作指令  7 比较运算指令  8 循环指令  9 转移指令  10 条件设置字节指令  11 字符串操作指令  12 ASCII-BCD码调整指令  13 处理器指令  5.3 习题 第6章 程序的基本结构  6.1 程序的基本组成   1 段的定义  2 段寄存器的说明语句  3 堆栈段的说明  4 源程序的结构  6.2 程序的基本结构   1 顺序结构  2 分支结构  3 循环结构  6.3 段的基本属性   1 对齐类型  2 组合类型  3 类别  4 段组  6.4 简化的段定义   1 存储模型说明伪指令  2 简化段定义伪指令  3 简化段段名的引用  6.5 源程序的辅助说明伪指令   1 模块名定义伪指令  2 页面定义伪指令  3 标题定义伪指令  4 子标题定义伪指令  6.6 习题 第7章 子程序和库  7.1 子程序的定义  7.2 子程序的调用和返回指令   1 调用指令  2 返回指令  7.3 子程序的参数传递   1 寄存器传递参数  2 存储单元传递参数  3 堆栈传递参数  7.4 寄存器的保护与恢复  7.5 子程序的完全定义   1 子程序完全定义格式  2 子程序的位距  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值