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

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

时间:2015-04-27 21:58:19      阅读:212      评论:0      收藏:0      [点我收藏+]

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

1. DS寄存器

通常用来访问存放数据的段地址。

【示例】读取10000H单元内容

Mov bx,1000H

Mov ds,bx

Mov al,[0]

将1000:0中的数据读到al中。

Mov 指令的两种传送:

(1). 将数据直接送入另一个寄存器

(2). 将一个寄存器的数据送入另一个寄存器内。

10000H用段地址和偏移地址表示位1000:0。

我们先将段地址送入寄存器DS,然后使用Mov al,[0]

完成传送,[0]说明这个内存单元的偏移地址为0。

首先要知道,8086CPU不支持直接将数据送入段寄存器,所以只能中转。

2.字的传送

 技术分享


技术分享


技术分享



说明:

前两行指令的目的是将DS设置为1000H

1000:0处存放的字型数据送入ax

1000:1处存放数据为高8位。

1000:0处存放数据为低8位。

所以1000:0处存放的数据为02B6,指令执行时,字型数据的高8位送入寄存器ah,字型数据的低8位送入寄存器al。则寄存器ax中存放的数据为02B6。

 

3. Mov、add和sub指令

Mov 指令可以有以下几种形式:

Mov 寄存器,数据       mov ax,8

Mov 寄存器,寄存器   mov ax,bx

Mov 寄存器,内存单元 mov ax,[0]

Mov 内存单元,寄存器 mov [0],ax

Mov 内存单元,段寄存器 mov [0],cs

Mov 段寄存器,寄存器 mov ds,ax

Mov 寄存器,段寄存器 mov ax,ds

Add指令和sub指令同mov指令形式,但是注意一点,没有add ds,ax这种情况。

 

 

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

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

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

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