汇编语言简短笔记

机器语言是机器指令的集合

机器指令是一台机器可以正确执行的命令,由一串二进制数表示。

汇编语言的主题是汇编指令 ,汇编指令是机器指令的助记符。

寄存器:cpu中可以存储数据的器件。一个cpu中有多个寄存器。

数据和指令都是二进制信息。

存储器被划分为若干个存储单元,每个存储单元从0开始顺序编号,每个存储单元内容为一字节。

地址总线的宽度,决定了可寻址存储单元大小;N根地址总线(宽度为N),对应的寻址空间为2**N。

数据总线的宽度决定了cpu和外界的数据传送速度。

控制总线是一些不同控制线的集合,控制总线的宽度决定了cpu对外部器件的控制能力。

RAM(随机存储器):能读能写,断电后信息丢失。包括主板上的RAM,扩展槽上的RAM(例显卡)

ROM(只读存储器):只能读,断电后信息不丢失,包含一些系统启动所运行的一些程序。包括系统BIOS,接口卡上的BIOS。

CPU的组成:1.运算器进行信息处理 2.寄存器进行信息存储 3.控制器协调各种器件进行工作

寄存器: 1.通用寄存器:AX,BX,CX,DX 2.变址寄存器 : SI,DI

3.指针寄存器 : SP,BP 4.指令指针寄存器 : IP

5.段寄存器 : CS,SS,DS,ES 6. 标志寄存器 : PSW

通用寄存器均可以分为两个独立的8位寄存器。例如:AX可以分为AH(高位)和AL(低位)

1个字=2个字节=16位

mov ax,18 将18 送入AX AX=18

add ax,bx 将寄存器AX中的数值加上BX并存入BX ax=ax+bx

所有的内存单元构成的存储空间是一个一维的线性空间,每个内存单元都有一个唯一的地址,物理地址

地址加法器合成物理地址的方法:物理地址(20位)=段地址*16+偏移地址 (16进制的段地址相当于左移一位) 表示方法: 段地址:偏移地址

物理地址唯一时,段地址和偏移地址不唯一。

段地址*16必然是16的倍数,所以一个段的起始地址也一定是16的倍数。

偏移地址为16位,16位地址的寻址能力为64k,所以一个段的长度最大为16k。

CS-代码段寄存器 DS-数据段寄存器 SS-栈段寄存器 ES-附加段寄存器

Debug :

1.用R命令查看、改变CPU寄存器的内容

2.用D命令查看内存中的内容

3.用E命令改变内存中的内容

4.用U命令将内存中的机器指令翻译为汇编指令

5.用A命令以汇编指令的格式在内存中写入机器指令

6.用T命令单条执行机器指令

7.用Q命令退出Debug

CS:IP CPU将内存中CS:IP指向的内容当作指令执行

改变CS,IP的值 :

1.Debug中的R命令(r cs,ip),Debug是调试手段,并非程序方式

2.不能用指令修改,8086不提供对CS、IP的修改

3.jmp指令

(1) 同时修改CS、IP的内容 , jmp 2AE2 :2

(2)仅修改IP的内容 ,jmp ax (类似于 mov IP,ax)

字单元:有两个地址连续的内存单元组成,存放一个字型数据(16位)。低位字节存在低地址单元,高位字节存在高地址单元。

DS和[address]实现字的传送 :段地址可以放入DS中,但应首先将段地址存入通用寄存器中再转入DS中,不可以直接向DS中存入段地址,在之后的指令中例如 mov ax [0],[0]指段地址为DS中内容,偏移地址为0的内存单元,并将其存入ax中;mov [0],ax 即是将ax 中的内容存入段地址为DS内容,偏移地址为0的内存单元中。ax存入一个字(两个字节)的内容,而ah(高八位)、al(低八位)存入一个字节的

mov指令操作数据

推测出以下成立:

mov 寄存器,段寄存器

mov 内存单元,段寄存器

mov 段寄存器,内存单元

加法add和减法sub

注意:1.段寄存器和寄存器不可以直接相加

           2.两个内存单元不可以直接相机

栈结构

栈是一种只能在一端进行插入或删除操作的数据结构。

栈有两个操作:1.入栈:将一个新的元素放到栈顶 2.出栈:从栈顶取出一个元素

push ax:将ax中的数据送入栈中 pop ax :从栈顶取出数据送入ax (以字为单位对栈进行操作)

栈段寄存器SS :存放栈顶的段地址 栈顶指针寄存器SP:存放栈顶的偏移地址

任意时刻,SS:SP指向栈顶元素

注意内存空间的大小以及存入数据的大小,防止栈顶超界 (push,pop都有可以超界)

  • 19
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值