小甲鱼汇编语言学习笔记——day02
1、8086CPU不支持将数据直接送入段寄存器,需要按照下面方式:数据——》通用寄存器——》段寄存器。
2、mov指令的几种形式:
mov 寄存器,数据
mov 寄存器,寄存器
mov 寄存器,内存单元 mov ax,[0] 将段地址为DS,偏移地址为0的数据存到ax寄存器里。
mov 内存单元,寄存器 mov [0],ax 将ax寄存器里的数据存储到段地址为DS,偏移地址为0的内存地址。
mov 段寄存器,寄存器
mov 寄存器,段寄存器
3、mov、add、sub是具有两个操作对象的指令,jmp只有一个操作对象。
4、入栈和出栈指令:
push ax :将寄存器ax中的数据送入栈中
pop ax :从栈顶取出数据送入ax
ps:8086CPU的入栈和出栈操作都是以字为单位进行的。
5、8086CPU中,有两个寄存器与栈有关:
段寄存器ss 存放栈顶的段地址
寄存器sp 存放栈顶的偏移地址
ps:任意时刻,SS:SP指向栈顶元素。push : sp=sp-2, pop: sp=sp+2

当栈里元素为空的时候,sp指向空间最高地址单元的下个单元。

6、字型数据用两个单元存放,高地址放高8位,低地址放低8位。
7、将10000H~1000FH这段空间当做栈,初始状态为空,设置AX=001AH,BX=001BH,将AX,BX中的数据入栈,然后将AX,BX清零,从栈中恢复AX,BX原本的内容。(注:main函数调用方法)
mov ax,1000 初始化栈顶
mov ss,ax 初始化栈顶
mov sp,0010 初始化栈顶
mov ax,001A
mov bx,001B
push ax
push bx
mov ax,0
mov bx,0
pop bx
pop ax
小甲鱼汇编语言学习笔记——day02的更多相关文章
- 小甲鱼汇编语言学习笔记——day03
手动编译并执行第一个汇编程序过程: 1.用notepad++写一个简单的汇编程序(文件命名为:1.asm): assume cs:abc abc segment mov ax, 2 add ax, a ...
- 小甲鱼汇编语言学习笔记——day01
1.计算机CPU由如下三部分组成(如下图):运算器.控制器.寄存器. 2.寄存器:简单说,就是用来存储数据的器件,类似内存,不过这个是CPU专用,跟内存不一样. 8086CPU里,寄存器总共有14个, ...
- 小甲鱼Python学习笔记
一 isdigit()True: Unicode数字,byte数字(单字节),全角数字(双字节),罗马数字False: 汉字数字Error: 无 isdecimal()True: Unicode数字, ...
- Linux下汇编语言学习笔记0 --- 前期准备工作
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- Linux下汇编语言学习笔记10 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- Linux下汇编语言学习笔记11 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- Linux下汇编语言学习笔记6 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- Linux下汇编语言学习笔记7 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- Linux下汇编语言学习笔记5 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
随机推荐
- servlet 容器与servlet
servlet代表应用 解析Tomcat内部结构和请求过程 https://www.cnblogs.com/zhouyuqin/p/5143121.html servlet的本质是什么,它是如何工作的 ...
- spring boot是一个应用框架生成工具?
spring boot是一个应用框架生成工具?
- [GXOI/GZOI2019]旅行者 (最短路)
题意 给定一个有向图,其中一些顶点为关键点.求这些关键点两两之间最小距离. 题解 考试时没怎么想写了50分暴力走了.以为是什么强连通分量的解法,结果就是个最短路.直接从关键点跑一次最短路dis[0], ...
- 例程使用(1-4)共享内存 存图片+vector容器教程
1传输的数据 1-1数据格式说明 1 两路视频图像Mat 图像 图像数据(Mat)+图像头信息(ImgInf) //图像的宽.高.类型信息 typedef struct { int width; // ...
- DiaryDayBayDayDiary
Every day, an email reminder will be sent to you, along with a random copy of your previous diary. Y ...
- go中的事件对象time.Duration
const ( Nanosecond Duration = 1 Microsecond = 1000 * Nanosecond Millisecond = 1000 * Microsecond Sec ...
- youtube 下载视频插件
https://zh.savefrom.net/userjs-for-google-chrome.php
- ubuntu笔记2-误删dpkg的/var/lib/dpkg/info文件夹
由于误删了dpkg的/var/lib/dpkg/info文件夹,导致安装文件的时候报错 错误提示:E: Sub-process /usr/bin/dpkg returned an error code ...
- [技术博客]使用PanResponder实现响应左右滑动手势
在实现用户左右滑动完成不同操作时,使用react-native的官方API--PanResponder响应用户手势操作. PanResponder介绍 PanResponder中文文档 PanResp ...
- Ubuntu16.04.1上搭建分布式的Redis集群,并使用C#操作
为什么要集群: 通常为了,提高网站的响应速度,总是把一些经常用到的数据放到内存中,而不是放到数据库中,Redis是一个很好的Cache工具,当然了还有Memcached,这里只讲Redis.在我们的电 ...