第一章 基础知识

2012年12月11日 星期二 16时30分57秒 / 2014年1月23日 星期四 00时13分10秒

王爽 汇编语言第二版

汇编课程重点:利用硬件系统的编程结构和指令有效灵活的控制系统进行工作

1.1 机器语言
程序员--->汇编语言--->---编译器---->机器码---->计算机

1.3 汇编语言的组成
汇编指令(机器码的助记符)
伪指令(由编译器执行)
其他符号(由编译器识别)

汇编语言的核心是汇编指令,它决定了汇编语言的特性。
1.4 存储器
指令和数据在存储器中存放,就是我们常说的内存。

1.5 指令和数据
指令和数据是应用上的概念,在内存或磁盘上,指令和数据没有任何区别。

1.6 存储单元
微机的存储器的存储单元可以存储一个Byte,即8个二进制数。
一个存储器有128个存储单元,它可以存储128个Byte(即128个字节)。

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

计算机中专门连接CPU和其他芯片的导线,通常称之为总线
物理上:一根根导线的集合
逻辑上:地址线,数据线,控制线

MOV AX,[3] 传送3号单元的内容到AX

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

一个CPU有N跟地址线,则可以说这个CPU的地址总线的宽度为N。这样CPU最多可以寻找2的N次方个内存单元。

1.9 数据总线
CPU与内存或其他器件之间的数据传送是通过数据总线来进行的。数据总线的宽度决定了CPU和外界的数据传送速度,8根数据总线一次性可以传送8个二进制数据(即一个字节),16根总线一次性可以传送16个二进制数据(即2个字节)。
8088CPU的总线宽度为8,8086CPU的总线宽度为16.

1.10 控制总线
CPU对外部器件的控制是通过控制总线来进行的。在这里,控制总线是个总称,控制总线是一些不同控制线的集合。有多少根控制总线,就意味着CPUT提供了对外部器件的多少种控制。所以控制总线决定了CPU对外部器件的控制能力。

1.11 内存地址空间(概述)
若一个CPU的地址总线宽度为10,那么这个CUP的寻址能力为2的10次方。

1.12 主板

1.13 接口卡
CPU通过总线向接口卡发送命令,接口卡根据CPU的命令来控制外设进行工作。

1.14 各类存储器芯片
随机存储器(RAM):可读可写,但必须带点存储。
只读存储器(ROM):只能读取不能写入。

1.15 内存地址空间
上述那些存储器,在物理上市独立的器件,但是在以下两点上相同:
1.0 都和CPU的总线相关。
2.0 CPU对他们进行读或写的时候都是通过控制线发出内存读或写命令。

内存地址空间的大小受CPU地址总线宽度的限制。

8086CPU的地址总线宽度为20,则可以传送2的20次方个不同的地址信息,即内存空间大小为1MB。
80386CPU的地址总线的宽度为32,即内存空间大小为4GB。

我们在基于一个计算机硬件编程的时候,必须知道这个系统中内存地址的分配情况。因为我们想在某类存储器中读写数据的时候,必须知道它的第一个和最后一个单元的地址,才能保证读写操作是在预期的存储器中进行。

不同的计算机系统的内存地址空间分配的情况是不同的

最终运行程序的是CPU,我们用汇编语言编程的时候,必须要从CPU的角度考虑问题,对CPU来讲,系统中所有的寄存器中存储单元都处于一个统一的逻辑寄存器中,它的容量受CPU寻址能力
的限制。这个逻辑存储器即使我们所说的内存地址空间。


2014-01-23 01:09 记 @sanlihedongkou.xichengqu.beijing
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值