微机原理 复习

news2024/12/29 10:35:22

第一章导论

1.3

冯诺依曼体系结构

(1)以二进制形式表示指令和数据

(2)程序和数据事先放在存储器中(预存储)

(3)由运算器、控制器、输入设备和输出设备五大部件组成

字长、主频、架构

地址总线AB

数据总线DB

控制总线CB

运算器ALU

控制器CU

指令寄存器IR

指令译码器ID

可编程逻辑阵列PLA

程序计数器PC  存放下一条要执行指令所在的存储单元的地址

地址寄存器AR

数据缓冲寄存器DR

累加器A

标志寄存器FLAGS(程序状态字PSW)

寄存器阵列RA

存储器

位Bit、字节Byte、字Word

内存容量

K----2^10     M----2^20       G---2^30           T------2^40

第二章 数制和编码

2.2

原码

反码

正数的反码与原码相同

负数的反码是在原码的基础上,符号位不变(仍为1),数值位按位取反

[-0]反=(2^8-1)-0 =1111 1111B

[-127]反=(2^8-1)-127=1000 0000B

补码

正数的补码与其原码、反码相同

负数的补码是在原码基础上,符号位不变,数值位按位取反,末位加1(反码+1)

[+48]补=0011 0000B=30H       字长扩展            =0000 0000 0011 0000B=0030H

[-48]补=1101 0000B=0D0H                                =1111 1111 1101 0000B=0FFD0H

[-128]补=2^8-128(用定义算)=1000 0000B=80H      =0FF80H

溢出

符号位进位CF、数值部分最高位(次高位)进位DF

OF=CF⊕DF

同时有进位或者同时没有进位,结果没有溢出

负+负     正+正     可能溢出

正-正      正+负      不溢出

第三章 8086微处理器

3.1

3.2

主频是指芯片所使用的主时钟频率,直接影响计算机的运行速度

8086有20根地址线,直接对2^20=1M个存储单元进行访问   00000H~FFFFFH

总线接口单元BIU-----------访问内存

执行单元EU----------访问I/O

存储器分段结构  段地址:段内偏移地址(有效地址)

AX累加器

BX基址寄存器  BX用来存放操作数在内存中数据段内的偏移地址,BP用来存放操作室在堆栈段内的偏移地址

CX计数器  在设计循环程序时放循环此时

DX数据寄存器  在寄存器间接寻址的I/O指令中存放I/O端口地址,在双字长乘法运算时,DX与AX一起存放一个双字长操作数,其中DX存放高16位

SP堆栈指针寄存器

BP基指寄存器   堆栈段内的偏移地址

SI源变址寄存器

DI目的变址寄存器

IP程序指针寄存器,用户不能直接访问IP

FLAGS标志寄存器

状态标志位

CF进位标志位

PF奇偶标志位,低8位含有偶数个1时,PF为1

AF辅助进位标志位,低字节的低4位向高4位有进位或借位时,AF=1

ZF零标志位,结果为0,ZF为1

SF符号标志位,最高位为1,SF=1

OF溢出标志位,溢出,OF=1

控制标志位

TF跟踪(陷阱)标志位,TF置1,处于单步工作方式

IF中断允许标志位,用来控制可屏蔽中断的控制标志位,用STI指令将IF置1,表示允许CPU接受外部从INTR引脚上发来的可屏蔽中断请求信号;用CLI指令将IF清0,禁止CPU接受可屏蔽中断请求信号。IF的状态对非屏蔽中断及内部中断没有影响

DF方向标志位,用STD将DF置1,串操作按减地址方式进行(每操作一次地址自动递减);若用CLD将DF清0,串操作按递增地址方式进行

8086引脚

地址/数据分时复用引脚AD15~AD0,传送地址时单向输出,传送数据时双向输入或输出

地址/状态时分复用引脚A19/S6~A16/S3,当访问存储器时,A19~A16,与AD15~AD0一起构成访问存储器的20位物理地址;

控制引脚

NMI非屏蔽中断请求信号

INTR可屏蔽中断请求信号,CPU在每个指令周期的最后一个时钟周期检测该信号是否有效,若此信号有效,表明有外设提出了中断请求,这时若IF=1,则当前指令执行完立即响应中断

M/IO*

物理地址20位A19~A16、D15~D0

逻辑地址  段地址:偏移地址

端口地址

8086系统可访问的8位I/O端口有65536(64K)个

基本的读周期由4个时钟周期组成

第四章  8086指令系统

4.2

4.3

寻址方式

数据寻址方式

  • 立即数寻址方式

        MOV BL,80H        MOV AX,1090H

  • 寄存器寻址方式

        (AX,BX,CX,DX,SI,DI,SP,BP

        MOV CL,DL

        MOV AX,BX

  • 存储器寻址方式

         直接寻址

        MOV AL,[1064H]

        MOV AL,value              (用符号地址来表示偏移量)

        寄存器间接寻址     BX、SI、DI

        MOV ES:[DI],AX

        寄存器相对寻址      BX、SI、DI、BP

        MOV [SI+10H],AX

        MOV CX,[BX+COUNT]

        MOV AL,TABLE[BP]

        基址变址寻址          BX、BP                  SI、DI

        MOV [BX+DI],AX

        MOV AH,[BP][SI]

        基址变址相对寻址   

        MOV AH,[BX+DI+1234H]

        MOV AX,COUNT[BX][SI]

  • I/O端口寻址

        端口直接寻址方式

        IN AL,21H

        端口间接寻址方式

        MOV DX,120H           OUT DX,AX

        >FFH,必须先通过DX        

地址寻址方式

(CS):(IP)

  • 段内转移

        NEAR:更新(IP)

  1. 段内直接

        JMP LABEL             无条件转移(近转移)

        JZ getzero                 条件转移(短转移)

        JMP NEAR PTR PROGIA              -32768~+32767

        JMP SHORT QUEST                     -128~+127

       2.段内间接

        程序转移地址存放在寄存器或存储单元中

        JMP BX

        JMP WORD PTR [BP+TABLE]

  • 段外转移

        FAR:     (CS):(IP)

  1. 段间直接

        JMP LABLE_NAME

        JMP FAR PTR NEXTROUTINT

      2.段间间接

        JMP VAR_DOUBLEWORD           (已定义的32位的存储器变量)

        JMP DWORE PTR[BP][DI]

8086指令系统

  • 数据传送类

        MOV dst,src

        reg/mem<------data

        reg/mem<------>reg

        reg/mem<------>seg

        CS不能做目的操作数

        不能meg<----->meg、seg<----->seg、seg<-----data

  • 堆栈操作指令

        push src   (SP)<-----(SP)-2            ((SP)+1:(SP))<-----(src)

        pop dst     (SP)<-----(SP)+2            (dst)<-----((SP)+1:(SP))

        src:   reg、seg、mem

        dst不能为CS

        dst、src不能是立即数

  • 数据交换指令

        XCHG  dst,src             (dst)<---->(src)

        reg<------>reg/mem        段寄存器的内容不能交换

  • 输入/输出指令

        IN acc,port                  acc<---port

        IN acc,DX

        OUT port,acc

        OUT DX,acc

  • 字节装换指令

        XLAT

        XLAT src_table                AL<-----(BX)+(AL)

        MOV BX,OFFSET Hex_tabel             (BX)<---表首址        offset取出偏移地址

        MOV AL,0AH                                      (AL)<----序号

        XLAT Hex_table

  • 地址传送指令

        LEA reg16,mem

        LEA BX,value           等同于MOV BX,OFFSET value

        mov bx,value这是错误的

地址指针装入DS指令LDS

LDS SI,[0010H]

  • 标志传送指令

        LAHF         load AH from flags

        SAHF        store AH into flags

        PUSHF、POPF

5

6.3

7.3

8

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1877511.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《昇思25天学习打卡营第6天|onereal》

Vision Transformer&#xff08;ViT&#xff09;简介 近些年&#xff0c;随着基于自注意&#xff08;Self-Attention&#xff09;结构的模型的发展&#xff0c;特别是Transformer模型的提出&#xff0c;极大地促进了自然语言处理模型的发展。由于Transformers的计算效率和可扩…

深度解析:机器学习如何助力GPT-5实现语言理解的飞跃

文章目录 文章前言机器学习在GPT-5中的具体应用模型训练与优化机器翻译与跨语言交流&#xff1a;情感分析与问答系统&#xff1a;集成机器学习功能&#xff1a;文本生成语言理解任务适应 机器学习对GPT-5性能的影响存在的挑战及解决方案技术细节与示例 文章前言 GPT-5是OpenAI公…

昇思25天学习打卡营第11天|SSD目标检测

1. 学习内容复盘 模型简介 SSD&#xff0c;全称Single Shot MultiBox Detector&#xff0c;是Wei Liu在ECCV 2016上提出的一种目标检测算法。使用Nvidia Titan X在VOC 2007测试集上&#xff0c;SSD对于输入尺寸300x300的网络&#xff0c;达到74.3%mAP(mean Average Precision)…

任意密码重置漏洞

文章目录 1. 任意密码重置漏洞原理2. 任意密码重置漏洞产生原因3. 任意密码重置漏洞场景3.1 验证码爆破3.2 验证凭证回传3.3 验证凭证未绑是用户3.4 跳过验证步骤3.5 凭证可预测3.6 同时向多个账户发送凭证 4. 任意密码重置经典案例4.1 中国人寿某重要系统任意账户密码重置4.2 …

Go Error 处理

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

ModuleNotFoundError: No module named ‘_sysconfigdata_x86_64_conda_linux_gnu‘

ModuleNotFoundError: No module named _sysconfigdata_x86_64_conda_linux_gnu 1.软件环境⚙️2.问题描述&#x1f50d;3.解决方法&#x1f421;4.结果预览&#x1f914; 1.软件环境⚙️ Ubuntu 20.04 Python 3.7.0 2.问题描述&#x1f50d; 今天发现更新conda之后&#xff0…

【数据库】Oracle安装报错(win10安装oracle提示环境不满足最低要求)

目录 一、问题场景&#xff1a; 二、问题描述 三、原因分析&#xff1a; 四、解决方案&#xff1a; 一、问题场景&#xff1a; 安装Oracle数据库 二、问题描述 安装之前提示&#xff08; [INS-13001]环境不满足最低要求。 是否确实要继续? &#xff09; 如图所示&…

1-爬虫基础知识(6节课学会爬虫)

1-爬虫基础知识&#xff08;6节课学会爬虫&#xff09; 1.什么是爬虫2.爬取的数据去哪了3.需要的软件和环境4.浏览器的请求&#xff08;1&#xff09;Url&#xff08;2&#xff09;浏览器请求url地址&#xff08;3&#xff09;url地址对应的响应 5.认识HTTP/HTTPS5.1 http协议之…

43.三倍游戏

上海市计算机学会竞赛平台 | YACSYACS 是由上海市计算机学会于2019年发起的活动,旨在激发青少年对学习人工智能与算法设计的热情与兴趣,提升青少年科学素养,引导青少年投身创新发现和科研实践活动。https://www.iai.sh.cn/problem/390 题目描述 三倍游戏是一种单人游戏。玩…

2.优化算法之滑动窗口1

1.长度最小的子数组 . - 力扣&#xff08;LeetCode&#xff09; &#xff08;1&#xff09;题目描述 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 子数组 [numsl, numsl1, ..., numsr-1, numsr] &#xff0c;…

全网唯一免费无水印AI视频工具!

最近Morph Studio开始免费公测&#xff01;支持高清画质&#xff0c;可以上传语音&#xff0c;同步口型&#xff0c;最重要的是生成的视频没有水印&#xff01; Morph Studio国内就可以访问&#xff0c;可以使用国内邮箱注册&#xff08;我用的163邮箱&#xff09;&#xff0c;…

Java代码高风险弱点与修复之——弱密码哈希漏洞-Very weak password hashing (WEAK_PASSWORD_HASH)

弱密码哈希漏洞 弱密码哈希漏洞指的是在密码存储和验证过程中,由于使用了不安全的哈希算法或哈希函数的错误使用,导致攻击者能够更容易地破解或绕过密码验证机制。这种漏洞使得存储在系统或应用中的用户密码容易受到威胁,增加了账户被非法访问和数据泄露的风险。 常见的弱…

前端工程化08-新的包管理工具pnpm

1、历史原因解读 pnpm这个东西发布的时间是比较早的&#xff0c;但是在最近一两年的时候才开始流行&#xff0c;甚至是可以说非常的盛行&#xff0c;那么这个包到底是个什么东西的&#xff0c;那么我们先说下&#xff0c;原来的包管理工具到底有那些问题&#xff1f;比如说我们…

面向对象和面向过程编程的区别

引言 小伙伴们&#xff0c;当你们看到这章的时候&#xff0c;显然你们已经跨过了来自指针给你们带来的麻烦&#xff0c;唔~真棒呢&#xff0c;但是我们只学会一些基础的C语法并不能帮我们解决问题&#xff0c;甚至是稍微难一些的题目我们都没办法解决&#xff0c;那怎么办呢&am…

Linux基础 - BIND加密传输缓存服务器

目录 零. 简介 一. 安装 二. 安全的加密传输 三. 部署缓存服务器 四. 总结 零. 简介 BIND&#xff08;Berkeley Internet Name Domain&#xff09;是一款广泛使用的开源 DNS&#xff08;域名系统&#xff09;服务器软件。 域名系统的主要作用是将易于人类理解的域名&…

实验2 色彩模式转换

1. 实验目的 ①了解常用的色彩模式&#xff0c;理解色彩模式转换原理&#xff1b; ②掌握Photoshop中常用的颜色管理工具和色彩模式转换方法&#xff1b; ③掌握使用Matlab/PythonOpenCV编程实现色彩模式转换的方法。 2. 实验内容 ①使用Photoshop中的颜色管理工具&#xff…

Node.js个人博客

1. 项目介绍 项目演示地址&#xff1a;https://ximingx.org.cn/ 项目github&#xff1a;https://github.com/ximingx/blog 想象一下,你是一位热爱写作的程序员小王。每天,你都有很多新的想法和技术心得想要分享。但是,管理你的博客网站却成了一个让你头疼的问题。 周一早晨…

统计分析利器:深入解读卡方检验与单因素方差分析的应用案例【练习题】

一、卡方检验 1.对400人进行问卷调查&#xff0c;询问对于教学改革的看法&#xff0c;调查结果如下表所示&#xff0c;请问不同学科不同性别的人意见是否相同。 学科 男生 女生 工科 80 40 理科 120 160 &#xff08;性别&#xff0c;学科均无序分类>卡方检验&am…

【SGX系列教程】(五)Intel-SGX 官方示例分析(SampleCode)——RemoteAttestation

文章目录 一.RemoteAttestation原理介绍1.1 远程认证原理1.2 远程认证步骤1.3 远程认证基本流程1.4 IAS通过以下步骤验证报告的签名1.5 关键术语1.6 总结二.源码分析2.1 README2.1.1 README给出的编译流程2.2 重点代码分析2.2.0 主要代码模块交互流程分析2.2.1 isv_app文件夹2.…

Leetcode刷题笔记 | 二叉树基本性质 | 一天的题量 | 5道题目 | 深度优先搜索 | 广度优先搜索 | 递归 | 遍历

&#x1f64b;大家好&#xff01;我是毛毛张! &#x1f308;个人首页&#xff1a; 神马都会亿点点的毛毛张 &#x1f4cc;本期毛毛张分享的是LeetCode关于二叉树&#x1f332;的性质的一些基础题&#xff0c;做这些题目的本质还是遍历二叉树&#x1f3c3;‍➡️的过程&#…