微机原理复习笔记

简介: 微型计算机系统

1.微型计算机系统

1.1计算机系统组成



1.1.1 主机系统

主机系统由四部分组成


CPU,存储器,输入输出接口,总线


特征


能够与CPU直接进行信息交换的部件属于主机系统


不能够与CPU直接进行信息交换的部件属于外部设备


1.1.2 微处理器(CPU)

主要包括:运算器、控制器、寄存器组


1.1.3 存储器


内存储器


特点


存取速度较快,容量相对较小。

内存储器的分类



1.1.4 输入/输出接口

接口是CPU与外部设备间的桥梁

主要功能

1.数据缓冲寄存;

2.信号电平或类型的转换;

3.实现主机与外设间的运行匹配。

1.1.5 总线

是一组导线和相关的控制、驱动电路的集合。

是计算机系统各部件之间传输地址、数据和控制信息的通道

有三种总线:

地址总线(AB)

数据总线(DB)

控制总线(CB)

2 计算机中的编码

2.1 BCD码

3.8088内部寄存器

3.1内部寄存器类型

含14个16位寄存器,按功能可分为三类


8个通用寄存器


4个段寄存器


2个控制寄存器


3.2 通用寄存器

数据寄存器(AX,BX,CX,DX)


地址指针寄存器(SP,BP)


变址寄存器 (SI,DI)


3.2.1 数据寄存器

8088/8086含4个16位数据寄存器,它们又可分为8个8位寄

存器,即:

AX : 累加器。

        所有I/O指令都通过AX与接口传送信息,中间运算结果也多放于AX中;

BX : 基址寄存器。

        在间接寻址中用于存放基地址;

CX : 计数寄存器。

        用于在循环或串操作指令中存放计数值;

DX : 数据寄存器。

        在间接寻址的I/O指令中存放I/O端口地址 ;在32位乘除法运算时,存放

       高16位数。

3.2.2 地址指针寄存器

SP:

     堆栈指针寄存器,其内容为栈顶的偏移地址

BP:

     基址指针寄存器,常用于在访问内存时存放内存单元的偏移地址。

BX 与 BP 在应用上的区别

作为通用寄存器,二者均可用于存放数据;

作为基址寄存器,用BX表示所寻找的数据在 数据段 ;用BP 则表示数据在 堆栈段 。

3.2.3 变址寄存器

SI:源变址寄存器

DI:目标变址寄存器

变址寄存器在指令中常用于存放数据在内存中的地址。

4.标志位.

4.1 状态标志位

CF(Carry Flag)

  进位标志位。加(减)法运算时,若最高位有进(借)位则CF=1

OF(Overflow Flag)

   溢出标志位。当算术运算的结果超出了有符号数的可表达范围时, OF=l

ZF(Zero Flag)

   零标志位。当运算结果为零时ZF=1

SF(Sign Flag)

   符号标志位。当运算结果的最高位为1时,SF=l

PF(Parity Flag)

   奇偶标志位。运算结果的低8位中“1 ” 的个数为偶数时PF=l

AF(Auxiliary Carry Flag)

   辅助进位标志位。加(减)操作中,若Bit3向Bit4有进位(借位), AF=1

案例

4.2控制标志位

TF(Trap Flag)

 陷井标志位,也叫跟踪标志位。TF=1时,使CPU处于单步执行指 令的工作方式。

IF(Interrupt Enable Flag)

 中断允许标志位。IF=1使CPU可以响应可屏蔽中断请求。

DF(Direction Flag)

 方向标志位。在数据串操作时确定操作的方向。

5. 段寄存器

作用: 用于存放相应逻辑段的段基地址


8086/8088内存中逻辑段的类型

CS:


代码段寄存器,存放代码段的段基地址。

DS:

数据段寄存器 ,存放数据段的段基地址。

ES:

附加段寄存器,存放数据段的段基地址。

SS:

堆栈段寄存器, 存放堆栈段的段基地址

6.总线






7.指令

7.1 指令格式




7.2 数据传输类指令


7.2.3 MOV


7.2.4 PUSH和 POP




7.2.5 XCHG

7.2.6 XLAT

 


7.2.7 CBW CBD



7.3 输入输出指令




8.寻址方式

8.1立即寻址

由指令直接给出运算的数据(操作数是立即数。为常数形式或字符形式。

立即数只表示运算的数据,无地址含义

//立即寻址仅适合于源操作数。即源操作数是参加操作的数据本身

MOV AX,1200H

8.2 寄存器寻址

参加操作的操作数在CPU的通用寄存器中。

//此种寻址方式中的寄存器主要是通用寄存器

MOV AX,BX

8.3 直接寻址

指令中直接给出操作数的偏移地址

MOV AX,[1200H]


8.4 寄存器间接寻址

操作数存放在内存中,数据在内存中的偏移地址为方括号中通用寄存器的内容。


仅有4个通用寄存器可用于存放数据的偏移地址 (间址寄存器 BX BP SI DI)

MOV AX,[BX]


8.5 寄存器相对寻址

操作数的偏移地址为寄存器的内容加上一个位移量。

MOV AX,[BX+DATA] //DATA是任意8bit或16bit常数

MOV AL,[BX]5     //相当于[BX+5]

8.6 基址、变址寻址

操作数的偏移地址为


一个基址寄存器的内容 + 一个变址寄存器的内容;

MOV AX,[SI+BX] //也可以表示为[BX][SI]



8.7 基址、变址、相对寻址

操作数的偏移地址为:

基址寄存器内容+变址寄存器内容+位移量

MOV AL,[BP][DI]5 //也可以表示为[BP+DI+5]


8.8 隐含寻址

指令中隐含了一个或两个操作数的地址,即操作数在默 认的地址中。

MUL BL

 


相关文章
|
Prometheus 负载均衡 监控
详解Gateway
详解Gateway
2339 0
vscode莫名其妙的错误:eslint的语法校验规则
vscode莫名其妙的错误:eslint的语法校验规则
426 0
|
小程序 JavaScript Java
基于SpringBoot+Vue+uniapp微信小程序的优购电商小程序的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的优购电商小程序的详细设计和实现
255 0
|
4月前
|
人工智能 缓存 算法
《人机协同的边界与价值:开放世界游戏系统重构中的AI工具实战指南》
本文复盘了开放世界游戏“动态实体调度系统”重构项目中,借助Cursor与CodeBuddy实现人机协同开发的30天实践。项目初期因代码耦合、性能不达标陷入技术死锁,团队通过“CodeBuddy全局架构拆解+Cursor局部编码优化”的组合模式,完成模块拆分、算法重构、资源泄漏排查与兼容性测试四大核心任务。AI工具在全局逻辑拆解、隐性问题定位、测试用例生成等方面效率提升显著,而人类聚焦业务规则定义、方案决策与细节优化,形成“AI搭框架、人类填细节”的协作模式。
224 12
|
Unix Linux
Linux中的Crontab:定时任务管理器
`crontab`是Linux下的定时任务管理器,用于设置周期性执行的任务。用户可以通过`crontab -l`查看任务,`crontab -e`编辑,`crontab -r`删除任务。任务格式为:`* * * * * command`,分别代表分钟、小时、日期、月份、星期,例如`30 10 * * * /path/to/script.sh`。注意确保命令有执行权限,处理环境变量,并关注日志文件 `/var/log/syslog` 或 `/var/log/cron`。学会使用`crontab`能有效自动化Linux系统的日常任务。
|
测试技术 块存储 开发者
阿里云块存储团队软件工程实践
本文介绍了阿里云团队软件工程实际开发流程,并简述了开发过程中遇到的一些问题。且附带案例,以及遇到案例中出现的情况应当如何应对。
|
传感器 算法 机器人
基于Arduino的3D打印六足机器人
基于Arduino的3D打印六足机器人
411 0
|
数据可视化 算法 Java
国人开发的JAVA三维可视化组件:Matplot 3D for JAVA(V3.0) 一个业余程序员用纯JAVA开发的科学数据可视化组件包
Matplot3D for JAVA(V3.0) 是一个基于JAVA SE 1.8环境开发的三维图形图表组件。 组件由纯JAVA SE 实现(Pure Java) ,封装为一个jar包,jar文件大小不超过300KB。内含自主研发的三维几何造型、绘制算法,无需依赖OpenGL、DriectX、JAVA 3D或JAVAFX等等第三方库,其只依托JRE自带的类库即可(即只需安装了JAVA就可使用),可以非常方便的将Matplot3D for JAVA(V3.0)显示面板嵌入到自己JAVA GUI程序中,或者生成图片用于Web动态页面中。
1300 0
国人开发的JAVA三维可视化组件:Matplot 3D for JAVA(V3.0)  一个业余程序员用纯JAVA开发的科学数据可视化组件包
|
运维 小程序 API
STM32实战项目—WIFI远程开关灯
本文介绍了如何利用正点原子ESP8266和STM32F103C8T6连接腾讯云,利用舵机实现远程开关灯。给出了详细的腾讯云配置和调试步骤,给出了部分程序设计。
670 1
STM32实战项目—WIFI远程开关灯
|
机器学习/深度学习 人工智能 安全
【网安AIGC专题】46篇前沿代码大模型论文、24篇论文阅读笔记汇总
【网安AIGC专题】46篇前沿代码大模型论文、24篇论文阅读笔记汇总
610 0