汇编学习(二)——8086CPU
一、8086CPU
1、微处理器
(1)微控制机:也称单片机
(2)DSP芯片:数字信号处理芯片
(3)嵌入式微处理器
(4)通用微处理器:PC站、工作站、服务器使用的处理器
2、内部结构:
(1)总线接口单元(BIU):
A、负责数据的传输和指令的读取
B、执行单元对指令机器码进行译码
C、对芯片中各部件进行协调控制
(2)执行单元(EU):执行运算
3、8086寄存器

(1)通用寄存器:
A、8个通用寄存器:AH,AL,BH,BL,CH,CL,DH,DL
B、2个变址寄存器:SI,DI
C、2个指针寄存器:BP,SP
这四个寄存器只能按16位操作,主要用来暂存数据或者地址
(2)段寄存器:
主要为主储存器的分段管理提供段地址
(3)控制寄存器:
指令指针IP实际上是一个16位的加计数器,始终指向下一条要执行的命令的地址。
4、控制寄存器中的标志寄存器
(1)控制标志位:
DF:方向标志
IF:中断标志
TF:单步标志或者陷阱标志
(2)条件标志位
PF:奇偶标志:计算结果的低8位,若1的个数为偶数个,则PF=1,否则PF=0
ZF:零标志位:计算结果为0,ZF=1,否则ZF=0
AF:辅助进位/借位标志位:计算结果D3向D4进位或者借位,则AF=1,否则AF=0。
CF:进位/借位标志位:计算结果的最高位向前进位或者借位,则CF=1,否则CF=0
SF:符号标志位:计算记过为负,SF=1,否则SF=0,实际上就是计算机过的最高位(补码)
OF:溢出标志位:计算结果超出带符号数补码数的表示范围:OF=1,否则OF=0。用于计算加减法是否出错。
(3)判断OF标志位的方法:

减法同理可得
汇编学习(二)——8086CPU的更多相关文章
- 汇编学习二-VB(常见函数分析)
VB代码如下所示 push ebp 00401FF1 . 8BEC mov ebp,esp 00401FF3 . 83EC 0C sub esp,0xC push <jmp.&MSVBV ...
- emberjs学习二(ember-data和localstorage_adapter)
emberjs学习二(ember-data和localstorage_adapter) 准备工作 首先我们加入ember-data和ember-localstorage-adapter两个依赖项,使用 ...
- ReactJS入门学习二
ReactJS入门学习二 阅读目录 React的背景和基本原理 理解React.render() 什么是JSX? 为什么要使用JSX? JSX的语法 如何在JSX中如何使用事件 如何在JSX中如何使用 ...
- TweenMax动画库学习(二)
目录 TweenMax动画库学习(一) TweenMax动画库学习(二) TweenMax动画库学习(三) Tw ...
- 汇编学习笔记(11)int指令和端口
格式 int指令也是一种内中断指令,int指令的格式为int n,n是中断类型码.也就是说,使用int指令可以调用任意的中断例程,例如我们可以显示的调用0号中断例程,还记得在汇编学习笔记(10)中我们 ...
- Hbase深入学习(二) 安装hbase
Hbase深入学习(二) 安装hbase This guidedescribes setup of a standalone hbase instance that uses the local fi ...
- Struts2框架学习(二) Action
Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器 ...
- Python学习二:词典基础详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html 邮箱:moyi@moyib ...
- Quartz学习--二 Hello Quartz! 和源码分析
Quartz学习--二 Hello Quartz! 和源码分析 三. Hello Quartz! 我会跟着 第一章 6.2 的图来 进行同步代码编写 简单入门示例: 创建一个新的java普通工程 ...
- SpringCloud学习(二):微服务入门实战项目搭建
一.开始使用Spring Cloud实战微服务 1.SpringCloud是什么? 云计算的解决方案?不是 SpringCloud是一个在SpringBoot的基础上构建的一个快速构建分布式系统的工具 ...
随机推荐
- ACM/ICPC 之 昂贵的聘礼-最短路解法(POJ1062)
//转移为最短路问题,枚举必经每一个不小于酋长等级的人的最短路 //Time:16Ms Memory:208K #include<iostream> #include<cstring ...
- MySQL thread pool【转】
本文来自:http://blog.chinaunix.net/uid-26896862-id-3993773.html 刚刚经历了淘宝的双11,真实感受到了紧张的氛围.尽管DB淡定的度过,但是历程中的 ...
- Mathematics:Semi-prime H-numbers(POJ 3292)
Semi-prime H-numbers 题目大意,令4n+1的数叫H数,H数素数x的定义是只能被x=1*h(h是H数),其他都叫合数,特别的,当一个数只能被两个H素数乘积得到时,叫H-semi数 ...
- myeclipse破解
由于内容比较多,我就直接转载了 ,同时感谢原博主 http://blog.itpub.net/27042095/viewspace-1164998/
- 解决jetty7.0.pre5启动时报ClassNotFoundException: javax.interceptor.InvocationContext异常的问题
一.背景介绍:最近项目在使用maven命令行运行jetty服务器时出现ClassNotFoundException: javax.interceptor.InvocationContext异常 二.环 ...
- CSS居中布局总结
居中布局 <div class="parent"> <div class="child">demo</div> </d ...
- python基础——继承和多态
python基础——继承和多态 在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类.父类或超类 ...
- Maven中手动引用第三方jar包
有些jar包在Maven库中并不支持,但我们又需要.所以就必须手动引入. 可分为三步完成: 1 ,在项目目录下创建Lib,把引入的jar包加入. 2.在pom.xml中引入dependences. 如 ...
- MyString(重写String)
http://wenku.baidu.com/view/d7ac113243323968011c925b.html 已知类String的原型为: class String { public: ...
- SYSIBM.SYSPACKSTMT db2 存储statement的表
SYSIBM.SYSPACKSTMT table The SYSIBM.SYSPACKSTMT table contains one or more rows for each statement ...
