码迷,mamicode.com
首页 > 编程语言 > 详细

汇编语言基础知识学习笔记(一)

时间:2015-04-20 22:47:48      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:汇编语言基础知识学习笔记一   汇编语言基础知识   

汇编语言发展至今,由下列三类指令组成。

1.     汇编指令:机器码的助记符,有对应的机器码。

2.     伪指令:没有对应的机器码,由编译器执行,计算机并不执行。

3.     其他符号:如:+、-、*、/等,由编译器识别,没有对应的机器码。

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

一.     CPU对存储器的读写

CPU要想进行数据的读写,必须和芯片进行3类的信息交互:

1.     存储单元的地址(地址信息)

2.     芯片的选择,读或写的命令(控制信息)

3.     读或写的数据(数据信息)

连接CPU和其他芯片的导线称为总线。根据传送信息的不同,总线又可以分为地址总线,数据总线和控制总线。

例:CPU从3号单元读取数据的过程如下:

技术分享

(1)    CPU通过地址线将地址信息3发出

(2)    CPU通过控制线发出内存读命令,选中存储器芯片,并通知它,将要从中读取数据。

(3)    存储器将3号单元中的数据08通过数据线传入CPU。

向3号单元写入数据26:

(1)CPU通过地址线将地址信息3发出

(2)CPU通过控制线发出内存读命令,选中存储器芯片,并通知它,将向其中写数据。

(3)CPU通过数据线将数据26送入内存的3号单元。

完成上面操作的机器码:1010000000000011 0000000

对应的汇编指令: MOVAX ,[3]

      含义:传送3号单元的数据到AX寄存器。

总线的类别:

1.     地址总线:

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

2.     数据总线:

CPU与内存或其他芯片之间的数据传送是通过数据总线来进行的。数据总线的宽度决定了CPU和外界的数据传送速度。

8086有16根数据线,可一次传送16位数据,即8个字节。而8088只有8根数据线,一次只能传8位数据。所以其向内存中写入16位数据时需两次传送。

3.     控制总线:

CPU对外部器件的控制是通过控制总线完成的。

总结:

1.     一个存储单元可以存储8位二进制数据。

2.     地址总线的宽度决定了CPU的寻址能力。

数据总线的宽度决定了CPU与其他器件进行数据传送时的一次数据传送量。

控制总线决定了CPU对系统中其他器件的控制能力。

二.     内存地址空间

可以这么理解:CPU在操纵存储器的时候,是把它们当作内存来看待,把它们总的看作若干个存储单元组成的逻辑存储器,这个逻辑存储器就是我们所说的内存地址空间。

16位机的内存地址空间地址段分配如下:

地址0~7FFFH的32KB空间为主随机存储器的地址空间。

地址8000H~9FFFH的8KB空间为显存地址空间。

地址A000H~FFFFH的24KB空间为各个ROM的地址空间。

这样,CPU向各个不同地址段的单元写入数据就会写入到不同的地址空间中。

 

 

 

汇编语言基础知识学习笔记(一)

标签:汇编语言基础知识学习笔记一   汇编语言基础知识   

原文地址:http://blog.csdn.net/u012675743/article/details/45154911

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!