北航微机原理复习
北航微机原理第6讲 ARM指令系统(3)
3.3.3 ARM指令
• ARM指令集——程序如何跳转
在ARM中有两种方式可以实现程序的跳转:
1.直接向PC寄存器赋值实现跳转;
例:
MOV
PC,R14
2.使用分支指令直接跳转。
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
31
3.3.3 ARM指令
• ARM指令集—— 分支指令
OpCode
操作数 R3
0x00000005
相与 为 条件标志 0
0x02
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
21
3.3.3 ARM指令
• 比较指令
应用示例: TEQ R3,R2 ; R3与R2是否相等并影响标志位 异或 不等 条件标志 与CMP的区别在于TEQ不影响C(进、借、扩展位)和V(溢出) 位,也就是只能判断是否相等,而不能判断是否大于,或小于。
运算寄存器,操作数 运算寄存器 运算符 操作数
影响标志位
2013/11/20 微机原理与接口技术(基于嵌入式芯片) 18
3.3.3 ARM指令
• 比较指令
比较运算符: CMP:数值比较 CMN:负数比较 TST:位测试 TEQ:相等测试
OpCode
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
3.3.3 ARM指令
• 算术逻辑运算指令
部分算术运算符: ADD:加法运算 ADC:带进位加法运算
OpCode
SUB:减法运算 RSB:逆向减法运算 SBC:带进位减法运算 RSC:带进位逆向减法运算
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
10
北航微机原理-第四章PPT课件
定义宏:在代码段外定义 引用宏:在代码段内调用
举例:定义宏在引用宏之前 与子程序区别
调用方法不同:宏名 Vs. CALL指令 传递参数方式不同:实参/形参 Vs. R/M/堆栈 目标程序长度不同:宏展开 Vs. 同一目标程序段 执行速度不同:无需保存返回地址 Vs. 返回地址入栈出栈
100 DUP(?) 1,2,3 ‘ABCD’
汇编时,形成指令:
MOV CX, 100 MOV BL, 1 MOV AL, 1
MASM中的表达式
SEG, OFFSET
SIZE (SIZE = TYPE* LENGTH)
返回变量包含的总字节数 例如
MOV CX, SIZE M1
MOV BL, SIZE M2
目标文件 *.OBJ
LINK.EXE 链接
可执行文件 *.exe
程序错误 汇编错误—>MASM
运行错误—>调试工具Debug
汇编语言程序的执行
1、编写
使用文本编辑工具,以ASCII码的形式编写程序,程序文件后 缀名为.ASM
2、汇编
把源文件翻译成目标文件,.ASM->.OBJ,使用MASM命令, 如:C:\>MASM 文件名[.ASM];
START: PUSH DS XOR AX,AX
指令
PUSH AX
MOV AX, DATA
MOV DS, AX MOV DX, OFFSET X MOV AH, 9 INT 21H
由段组成 段定义伪指令格式
RET MAIN ENDP
由指令和伪指令组成
CODE ENDS
END MAIN
汇编语言程序分析
MOV AL, SIZE M3 汇编时,形成指令:
北航微机原理-试题
INC LOOP MOV MOV OUT MOV OUT MOV OUT MOV OUT
DX WRITE DX, DMA+0BH AL, 40H DX, AL AL, 41H DX, AL AL, 96H DX, AL AL, 43H DX, AL
微机原理与接口技术
秦红磊
北京航空航天大学电子信息工程学院
微机原理及接口技术
试题(一)
一. 填空题
1. 微型计算机由 、 、 和 等 四部分组成。 2. 中断类型码为13H,其中中断向量在中断向量 表中的地址为 。 3. 使用8K×8的RAM芯片6264扩展32K字节的存储 体,需要 片6264。 4. 输入/输出的控制方式有 、 、 。
解:典型的DMA传送数据工作流程图如下:
DMA请求 DMA响应 发送存储器地址 传送数据 修改地址并计数 N
传送结束? Y DMA结束
三. 编写一个宏汇编语言程序,计算 A=3X*Y+Z-100。 要求 1.写出程序并注释; 2.画出内存分配图; 3.假设X=20,Y=58,Z=30,给出程序每步 结果。
解:
(1)程序及注释: DATA SEGMENT ; 定义数据段 MOV BL,Y X DB 20 ;输入变量定义 MUL BL ; Y DB 58 MOV CX,AX ; Z DB 30 ADD AX,AX ; A DW ? ; 输出变量定义 ADD AX,CX ; DATA ENDS MOV DL,Z CODE SEGMENT ; 代码段 MOV DH,0 ASSUME CS:CODE,DS:DATA ADD AX,DX ; MAIN PROC FAR SUB AX,100 ; START: PUSH DS ;保护返回地址 MOV A,AX ; SUB AX,AX RET ; PUSH AX MAIN ENDP MOV AX,DATA ;数据段的初始化 CODE ENDS MOV DS,AX END START ; MOV AL,X
微机原理期末复习:微机原理期末复习.docx
微机原理期末复习第2章计算机的基本结构与工作过程1.计算机的基本组成及各个组成部件的基本功能运算器运算器是进行算术运算(如加、减、乘、除等)和逻辑运算(如非、与、或等)的装置。
通常由算术逻辑部件ALU、专用寄存器X、Y和Z、累加器、通用寄存器RO、R1、…、Rn-1以及标志寄存器F组成。
核心部件ALU用于完成算术运算和逻辑运算。
X、Y是ALU的输入寄存器,Z是ALU的输出寄存器。
X、Y、Z是与ALU不可分的一部分,通常称为ALU的数据暂存器。
X、Y中的数据可来自通用寄存器,也可来自存储器。
Z中的数据可送往通用寄存器,也可送往存储器。
F用于存放运算结果的状态,例如,结果是否为零,是正还是负,有无进位,是否溢出,等等。
控制器为了实现对计算机各部件的有效控制,快速准确地取指令、分析指令和执行指令, 控制器通常由下而几部分组成:指令寄存器IR一一用于存放正在执行或即将执行的指令。
程序计数器PC——用于存放下一条指令的存储单元地址,它具有自动增量计数的功能。
存储器地址寄存器MAR——用于在访存时缓存存储单元的地址。
存储器数据寄存器MDR——用于在访存时缓存对存储单元读/写的数据。
指令译码器ID——用于对IR屮的指令进行译码,以确定IR屮存放的是哪一条指令。
控制电路一一产牛时序脉冲信号,并在时序脉冲的同步下对有关的部件发出微操作控制命令(微命令),以控制各个部件的动作。
输入设备用来输入数据和程序的装置,其功能是将外界的信息转换成机内的表示形式并传送到计算机内部。
常见的输入设备有键盘、鼠标、图形数字化仪、图像扫描仪等等。
输出设备用来输出数据和程序的装置,其功能是将计算机内的数据和程序转换成人们所需要的形式并传送到计算机外部。
常见的输出设备有显示器、打印机.绘图机等等。
存储器计算机中的指令和数据都表现为二进制数码。
为了准确地对存储器进行读或写,通常以字节(或以字)为单位将存储器划分为一个个存储单元,并依次对每一个存储单元赋予一个序号,该序号称为存储单元的地址。
北航计算机组成原理总复习
北航计算机组成原理总复习计算机组成原理是计算机科学与技术专业的一门重要课程,它主要研究计算机的基本原理、结构和工作原理。
下面将对北航计算机组成原理进行总复习,包括计算机的基本组成、存储器层次结构、指令系统和流水线技术等方面内容。
一、计算机的基本组成1.计算机硬件的五大基本组成部分:运算器、控制器、存储器、输入设备、输出设备。
2.计算机内部采用二进制表示,包括数据和指令都以二进制形式存储和处理。
3.计算机的性能指标:主频、存储容量、主存储器带宽、硬盘容量等。
二、存储器层次结构1.存储器层次结构的由低到高依次为:寄存器、高速缓存、主存储器、辅助存储器。
2.高速缓存的工作原理:利用时间和空间局部性原理,存放主存频繁访问的数据和指令,提高存储器访问速度。
3.主存储器的特点和访问方式:存储速度较快,采用随机访问方式。
三、指令系统1.指令系统的主要组成部分:操作码和地址码。
2.指令系统的类型:-RISC(精简指令集):指令长度固定,时间分布均匀,指令执行周期较短。
-CISC(复杂指令集):指令长度可变,时间分布不均匀,指令执行周期较长。
-MISC(微指令集):指令长度短,指令执行周期较短。
3.指令寻址方式:立即寻址、直接寻址、间接寻址、寄存器寻址等。
四、流水线技术1.流水线的概念:将指令的处理过程分成多个步骤,使多条指令可同时执行。
2.流水线的五个阶段:取指令、指令译码、执行指令、访存取数、写回结果。
3.流水线的优点:提高了指令的执行效率,缩短了执行时间。
4.流水线的冒险和解决方法:-结构冒险:通过优化硬件结构来解决,如增加多个运算器、加大寄存器容量等。
-数据冒险:通过转发、插入空指令、延迟加载等方法解决。
-控制冒险:通过分支预测和延迟分支等方法解决。
五、中断与异常1.中断:来自外部设备的信号,打断正常的程序执行。
-可屏蔽中断:可以根据需要屏蔽一些中断。
-不可屏蔽中断:无法屏蔽的中断,如计算机硬件故障等。
2.异常:指程序在执行过程中出现的错误或意外情况。
北航计算机组成原理总复习
CPU
Word
Block
Cache
Main Memory
9
高速缓冲存储器(Cache)的原理
Cache的基本结构
¾存储机构:保存数据,存取数据,一般采用SRAM构成。以Block
(若干字)为单位; ¾地址机构:地址比较机制,地址转换机制,地址标记(Tag),一
个Block具有一个Tag; ¾替换机制:记录Block的使用情况,替换策略,有效位(v)记录对
括寻址模式编码。有时操作数是隐含的。 ¾寻址方式数量:有时寻址方式可以是隐含的(由操作
码决定) 。 ¾寄存器数量 :确定寄存器编码的位数。 ¾地址范围:存储器直接寻址很少见,但变址(或基
址)寻址时,较大的寻址范围必须以较多的 displacement位数为前提。 ¾编址粒度(Address Granularity):字节编址或字编址。 字节编址方便,但要以更多的地址位数为代价。
¾先进先出法(FIFO,First-In-First-Out):最先装入数据的块被替换 ¾最小使用频率法 (LFU,Least-Frequently Used):记录每一个数据块
的使用频率,使用次数最少的被替换 ¾随机法(RAND,Random):随机选择一个数据块进行替换
15
16
Cache的容量
Cache的容量 ¾不作特殊申明时,Cache的容量指Cache所有数据块的容量 ¾Cache实际总的存储容量实际上还包含tag和valid bit的位数
3
存储单元电路
SRAM存储单元电路
DRAM存储单元电路
SRAM的特点 ¾触发器原理 ¾集成度低 ¾功耗大
DRAM的特点 ¾电容充放电原理 ¾集成度高 ¾功耗小 ¾需要刷新(读、放大、再写入)
北航微机原理课件第七讲 逻辑运算指令
以“与”指令为例,讨论注意事项:
•
•
“与”指令中操作数不能同时为存储器;
影响条件码: CF=0F=0, AF未定义 , SF ↕ ↕ ZF ↕ PF
“与”指令的用途:
(1) 清CF , 自己“与”自己. 操作数不变 ,CF=0 例:AND AL,AL ; (2) 结果:操作数不变 ,CF=0。
使操作数中若干位保持不变,若干位与“1”相与; 而若干位置为“0 “的场合,若干位与“0” 相与。
思路: • • 第一个数取出 ( AX), 取出第二个数(第二个字单元内容)与(AX)比较 : (AX)>第二个数,不做交换, 否则,(第二个字单元内容) (AX)。
•
•
再取第三个数,
… 经过99次比较,在(AX)中得到最大数。 …
编程:
MOV BX,OFFSET BLOCK MOV AX,[BX] INC BX INC BX MOV CX,99 AGAIN:CMP AX,[BX] JG NEXT MOV AX,[BX] INC BX INC BX DEC CX JNZ AGAIN MOV MAX,AX ;(AX) 大,转NEXT
15.DIV
16.LEA
DX,DI
;错 LEA源操作数应为一个存储器操作数, 不能是寄存器
;错 MUL为单操作数指令, 且源操作数不能为立即数,AX隐含
17.MUL
AX,200H
18.MOV
AX,[BX+BP];错 无[BP+BX]寻址,理由同第12题
19.CMP [BX],[SI] 21.OUT 22.AND 23.JNZ DX,BX 0FH,AL AAA
(2) 当(CX)≠0,
(CX) (CX) -1 , (3) 执行REP后的串指令, (4) 重复(1)~(3)。
北航微机原理第7讲 ARM指令系统(4)
1.将CPSR寄存器内容读出到
3.将修改后的值写回 CPSR寄
R0;
2.修改对应于CPSR中的I控
存器的对应控制域;
4.返回上一层函数;
17
制位;
2013/11/20 微机原理与接口技术(基于嵌入式芯片)
3.3.3 ARM指令
ARM指令种类
1.存储器访问指令 2.数据处理指令 3.乘法指令 4.ARM分支指令 5.协处理器指令 6.杂项指令 7.伪指令
• ARM杂项指令——软中断指令
用户模式 1.使用操作系统后,为 了防止出错的任务影响 其它任务的执行,通常 将任务放在用户模式执 行,以限制其权限; 任务1 管理模式 功能1:打开中断
任务2
功能2:关闭中断 …… 功能n:任务调度
2.对于一些重要的操作, …… 如中断的开关,必须由 操作系统完成。使用软 其它代码 件中断指令即可完成系 统功能调用;
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
11
• ARM杂项指令——状态寄存器写指令 “MSR”
在ARM处理器中,只有MSR指令可以对状态寄存器CPSR 和SPSR进行写操作。与MRS配合使用,可以实现对CPSR或 SPSR寄存器的读-修改-写操作,可以切换处理器模式等操作。
MSR
psr_field,操作数
BICNE R0, R0, #0xFF00; 取得Thumb指令的8位立即数 LDREQ R0, [LR,#-4] BICEQ R0, R0, #0xFF000000 ... LDMFD SP!, {R0-R3, R12, PC}^
2013/11/20
; 若是ARM指令,读取指令码(32位) ; 取得ARM指令的24位立即数
北航微机原理第一章
一、电子计算机1946年问世,先后经历了电子管、晶体管、集成电路和大规模和超大规模集成电路四代的发展。
二、微处理器(MP):1.指的是由一片或几片大规模集成电路组成的具有运算器和控制器功能的中央处理器(CPU)部件。
在微型计算机中直接用CPU表示微处理器。
2.CPU内部结构归纳起来可分为运算逻辑部件、寄存器部件和控制器部件三个部分。
相互协调,对命令和数据进行分析、判断、运算并控制计算机各部分协调工作。
按照其处理信息的字长,可分为4.8.16.32.64位处理器。
三、微型计算机(MC):是指以微处理器为核心,配上存储器、输入/输出接口电路及系统总线所组成的计算机四、微型计算机系统(MCS):1.是指以微型计算机为核心,配以相应的外围设备、电源和辅助电路等以及控制微型计算机工作的软件(系统软件和应用软件)所组成的系统。
2.组成:1)硬件系统:计算机的许多重要特性,如快速性、通用性、准确性和逻辑性,都取决于其最主要的结构原理,即存储程序原理,是计算机组织的关键。
根据存储程序原理构造的计算机称为存储程序计算机,由运算器、控制器、输入设备和输出设备组成的。
其特点如下:采用存储程序的方式,程序和数据放在同一存储器中,指令和数据一样可以送到运算器中运算,即由指令组成的程序是可以修改的;数据以二进制码表示;指令由操作码和地址码组成;指令在存储器中按执行顺序存放,由指令计数器指明要执行的指令所在的单元地址微机以运算器为中心,输入/输出设备与存储器间的数据传送是通过运算器实现的。
现代主流的微机硬件系统包括:主机(运算器、控制器和存储器在其内。
主机内的主板是构成复杂电子系统的中心,)、输入设备、输出设备2)软件系统:系统软件和应用软件五、微机硬件系统结构:1.是指按照总体布局的设计要求,将各部件构成某个系统的连接方式。
系统总线是用来传动信息的公共导线,所有的信息都通过总线传送。
2.通常,根据传送信息的内容与作用的不同,可以将系统总线分为数据总线(DB)、地址总线(AB)、控制总线(CB)。
北航微机原理第5讲 ARM指令系统(2)
• 指令条件码表
操作码 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
2013/11/20
条件助记符 EQ NE CS/HS CC/LO MI PL VS VC HI LS GE LT GT LE AL NV
ARM指令种类
1.存储器访问指令 2.数据处理指令 3.乘法指令 4.ARM分支指令 5.协处理器指令 6.杂项指令 7.伪指令
2013/11/20 微机原理与接口技术(基于嵌入式芯片) 19
3.3.3 ARM指令
• ARM指令集——存储器访问指令
【本课程所讲ARM指令,均为ARM7指令。】 ARM处理器是典型的RISC处理器,对存储器的 访问只能使用加载和存储指令实现。ARM处理器是 冯•诺依曼存储结构,程序空间、RAM空间及I/O映 射空间统一编址,除对RAM操作以外,对外围IO、 程序数据的访问均要通过加载/存储指令进行。 存储器访问指令分为单寄存器操作指令和多寄 存器操作指令。
2013/11/20
R2,[R3,#0x0C]
微机原理与接口技术(基于嵌入式芯片)
补充介绍
• 大小端模式 • 存储器内容查看 • 编译器内存数据查看
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
6
补充(1)-- Big endian & little endian
• Big-Endian就是高位字节排放在内存的低地址端 ,低位字节排放在内存的高地址端。 低地址存放高位 • Little-Endian就是低位字节排放在内存的低地址 端,高位字节排放在内存的高地址端。 低地址存放低位 • 比特序: 字节比特序:LSB,MSB 网络比特序
北京航空航天大学计算机组成原理与体系结构复习重点
第8章 异常控制流
• 信号处理方式;分析可能的输出 • 几个特殊函数 • 进程控制:fork,wait,画图分析可能的输出
第9章 虚拟存储器
• 动态存储器分配中的概念: 碎片,放置、合并策略,垃圾收集
• 地址翻译;多级页表
计算机组成与体系结构 复习
第2章 信息的表示和处理
• 十进制、二进制、十六进制 • 整数:无符号数、有符号数(补码) • 浮点数:形式;编码、求值、舍入 • 32位和64位系统中各类型数据的长度 • 不同类型数据的转换(符号、长度) • 补码的不对称;正负;求正数负值的补码 • 整数运算:有无符号混合、比较、除法舍入、
第5章 优化程序性能
• 会利用数据流图中的关键路径分析程序性能 • 掌握提高并行性的方法:
循环展开,多个累计变量,重新结合变换 • 使用条件传送 • 写/读相关对程序性Βιβλιοθήκη 的影响第6章 存储器层次结构
• 高速缓存结构、访问、命中
第7章 链接
• 全局、本地符号的概念 • static • 强弱符号 • 重定位
逻辑/算术右移 • 大端、小端
第3章 程序的机器级表示
• 寄存器及其默认用法;eip • 栈帧结构;过程调用时的参数传递、返回地址 • 返回时leave指令;栈帧变化 • leal指令 • 引起缓冲区溢出的函数 • 数组访问:由汇编代码得到数组列数 • 结构体和联合体:对齐;嵌套;各字段偏移量 • switch语句:跳转表 • 指针运算的缩放
北京航空航天大学 微机原理 第6章.8255a-2014
双向三态缓冲器,用作8255A与系统总线 之间的接口
4.读/写控制逻辑
CS:片选信号,低电平有效 RD:读信号,低电平有效 WR:写信号,低电平有效 A1A0:端口选择信号
A1A0=00 PA, 01 PB, 10 PC, 11 控制端口
RESET:复位信号,高电平有效,将 8255A内部寄存器清0.
a0与csrdwr信号一起用来确定8255a的操作状态当8255a用在8位数据总线的微处理器系统如8088时端口选择信号输入端a1a0分别与地址总线的a1a0相连即可在16位数据总线的系统8086中通常将地址总线的a2a1连到8255a的a1a0端以便8255a的数据总线连接在cpu数据总线的低8位上用偶地址来寻址8255a6228255a控制字8255a各端口的工作方式由写入8255a控制口的工作方式控制字来确定方式选择控制字
; ; ;无,等待 ;
;已松开,转去等待压键 ;先使D0=0 ;CL=1111 1110B ;端口A ;向一行输出低电平 ;端口B ;读取B口状态 ;只截取列值 ;是否都是1 ;否,表示有键按下,转去编码 ;都是1,使下行输出0 ;查看下行
;已找到有一列为低电平,对压键的行列值编码 ENCODE:MOV BX, 000FH;建立地址指针,先指向F键对应的地址 IN AL, DX ;从B口读取行列号 NEXT_TRY:CMP AL, TABLE[BX] ;读入的行列值与表中的值比较 JE DONE ;相等,转出 DEC BX ;不等,指向下一个地址 JNS NEXT_TRY ;若地址尚未减为负值,则继续 MOV AH, 01 ;若为负值,AH置出错码01 JMP EXIT ;退出 DONE: MOV AL, BL ;BL中存有键的16进制代码 MOV AH, 00 ;AH=0,读到有效键值 EXIT: HLT CODE ENDS END
北京航空航天大学 微机原理 第四章-3
例
mov AL, 0AH mov AL, AH
mov BX, 0abcdH
[标号:] 指令助记符 [操作数[,操作数]] [;注释] 变量
• 用符号表示的存放在存储单元中的可变数值。由DB、 DW、DD等伪指令定义。 • 具有三种属性:段基址、偏移地址、类型
注释
• 用于说明指令或程序的功能 • 增强程序可读性。
例
data1 data2
DB 12, 34, 56 DB 12H, 34H, 56H
;十进制 ;十六进制
MOV AL, ‘G’
string DB ‘1234’
;字符
;字符串
A、B、C、D、E、F开头的十六进制数前面加0,
与H结尾的标识符区别。 如 寄存器名AH、BH、CH、 DH 变量名 abcdH 等
LENGTH 100 DUP(?) 1,2,3 ‘ABCD’ CX, LENGTH M1 BL, LENGTH M2 AL, LENGTH M3 CX, 100 BL, 1 AL, 1
例 M1 M2 M3
DW DW DB MOV MOV MOV ;上述语句等效于: MOV MOV MOV
SIZE (SIZE = TYPE* LENGTH) DW DW DB 100 DUP(?) 1,2,3 ‘ABCD’ CX, SIZE M1 BL, SIZE M2 AL, SIZE M3 CX, 200 BL, 2 AL, 1
表示当前指令、数据或者位置的偏移地址 例4.1 DATA SEGMENT DT1 DB 33 LIST DB 12,38,5,29,74 CONT EQU $-LIST ;COUNT = 当前$所在位置的 DT2 DB 'E' ; 地址-LIST的偏移地址 DATA ENDS
北航微机原理第10讲 存储器
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
24
第三节 RAM
• 异步SRAM的模块结构
存储矩阵 读 写 放 大 器 数 据 锁 存 器 数 据 总 线
地址译码器
控制电路
地址锁存器
#OE #WE # CE
地址总线
2013/11/20 微机原理与接口技术(基于嵌入式芯片) 25
第三节 RAM
2013/11/20 微机原理与接口技术(基于嵌入式芯片) 34
高速缓存工作过程
ALU 指令解码 FPU
L1 Cache
总线接口
主板上的L2 Cache
CPU
内存 内建Cache 硬盘
2013/11/20 微机原理与接口技术(基于嵌入式芯片) 35
Pentium 微机Cache结构简介
CPU 封装
• DRAM 在原理上是通过 对电容充、放电来存入信息 的,会因漏电而导致存储的信息随时间的推移逐 渐减弱直至消失,因此需要定时给电容进行充电 以保持当前存储的信息。这种周期性的刷新操作 称为动态刷新。 • 与SRAM相比,DRAM芯片的内部增加了动态刷 新电路。 • DRAM 的集成度高,容量通常都比较大,为了减 少芯片引脚, DRAM 芯片采用时分复用的方式传 输地址。
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
9
(1) 掩膜ROM
• 是由生产过程中的一道掩膜工艺决定其中 的信息,半导体厂家按照固定的线路制造 的,一旦制造好后,其中的信息只能读而 不能改变。
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
10
(2) 可编程的只读存储器PROM
• 存取速度
北京航空航天大学非电类-微机原理复习大纲
非电类微机原理复习大纲(14系、15系)北京航空航天大学机械工程及自动化学院39071420陈明琦(因为要赶考,总结的比较急,有错误和不完善的地方请包涵~)第1章1、什么是计算机的系统总线,计算机三总线名称各是什么?计算机一般由哪五个部分构成?系统总线是用来传递信息的公共导线,可以使扁平电缆线,也可以是印刷电路板上的一层极薄的金属连线,所有的信息都通过总线传送。
数据总线,地址总线,控制总线。
主机,输入设备,输出设备,系统软件,应用软件2、微处理器的字长概念?每一个0或者1就是一位信息,为了便于计算信息长度,一般将8位二进制代码作为一个字节,再用两个字节组成一个字来表示16位数据的长度。
字长是计量处理二进制代码位长的单位,字长表示数据总线上一次能处理的信息位数,并由此定义是多少位计算机,用来区分计算机处理信息的能力。
第2章微机运算基础1、十进制数的BCD编码方法,数字的BCD码表示方法,如字符‘a-f,’A-F’,’0-9’的A SCII编码1.逢十进位2.每一位用四位二进制码表示3.区别纯二进制,每四位之间用空格隔开4.十进制与BCD之间的转化是直接的,二进制与BCD之间,必须先把二进制转化为十进制例子:11D=0001 0001BCD1011.01B=11.25D=(0001 0001.0010 0101)BCD压缩BCD码:一个字节中储存两个BCD码0001 0011.0010 0101BCD非压缩BCD码:一个字节中储存一个BCD码0000 0001 0000 0011.0000 0010 0000 0101BCDASCII码由高3位和低4位一共7位组成:字符'a-f''的高三位为110低四位为0001-0110字符'A-F'的高三位为100低四位为0001-0110数字'0-9'的高三位为011低四位为0000-10012、二进制数的逻辑运算(与、或、非、异或)与运算:×∧•或运算:+∨非运算:运算量上面加上¯异或运算:⊕3、机器数及其真值概念,正数、负数原码、补码和反码如何运算?符号数的表示范围与什么有关?规定一个字节中的最高位D7为符号位,D6-D0为数字位,符号位中0表示正,1表示负。
北航微机原理第8讲 ARM汇编程序设计
4.1 ARM数据处理操作
寄存器移位操作 在ARM数据处理指令中,第二操作数还 有一种特有的形式——寄存器移位操作,即 允许第二个寄存器操作数在同第一操作数运 算之前完成移位操作,例如:
ADD r3, r2,r1,LSL #3 ;r3<=r2 + 8 x r1
2013/11/20 微机原理与接口技术(基于嵌入式芯片) 6
2. ARM汇编语言语句格式
3)变量替换
用“$”操作符实现变量取值 数字变量前加“$”操作符,编译器会将该数字 变量的值转换为16进制的字符串,并用该字符串代 替该数字变量; 逻辑变量前加“$”操作符,编译器会将该逻辑 变量代换为他的取值(True/False); 字符串变量前加“$”操作符,编译器会将该字 符串变量代换为已赋值的字符串。
2013/11/20 微机原理与接口技术(基于嵌入式芯片) 12
ARM程序设计基础
1. 指示命令(derective) 2.ARM汇编语言语句格式 3.ARM汇编语言的程序格式 4. 相关的程序示例
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
13
4.相关的程序示例
; 例1 :
AREA EXAMPLE,CODE,READONLY ENTRY Start MOV r0,#10 MOV r1,#3 ADD r0,r0,r1 END 本程序的程序体部分实现了一个简单的加法运算。
2013/11/20
微机原理与接口技术(基于嵌入式芯片)
21
4.1 ARM数据处理操作
立即数操作 在数据处理指令中,第二操作数除了可以 是寄存器,还可以是一个立即数,如: ADD R3, r3,#1 ;r3 <= r3 + 1 AND R8, r7,#& ff ;r8 <= r7[7:0] 需要特别注意的是:在32位指令编码中 ,有效立即数是由一个8位的立即数循环右移 2n位得到(8位位图)。
微机原理复习题_第1、7章_序论、中断系统
第一章序论一.填空题1.与十进制数45等值的二进制数是______;与十进制数67等值的十六进制数是______。
答案:101101B;43H技巧:45=16×2+13=2DH=101101B ; 67=16×4+3=43H2.(250)10=()16=()2=()8答案:FA;11111010;372技巧:250=16×15+10=FAH=1111 1010B=372Q3.若X= -1010100,机器字长为8,则[X]原码 =______,[X]反码 =______ ,[X]补码 =______。
答案:11010100;10101011;101011004.对于字长为8的定点整数,其原码、反码的表示范围是______,补码的表示范围是______。
若N=-1010100,n=8,则[N]原码=______,[N]反码=______,[N]补码=______。
答案:-127~+127;-128~+127;11010100;10101011;101011005.已知X= +1011001,则 [X]补=______;已知Y =-1011001,则 [Y]补=______。
答案:01011001;101001116.已知X=-0.1011001,则 [X]补=______;已知Y=-0.1011001,则 [Y]反=______。
答案:1.0100111;1.01001107.字符“A”的ASCII码为41H,则字符“D”的ASCII码应为:______;字符“0”的ASCII码为30H,则字符“8”的ASCII码应为:______。
答案:44;388.若X=-107,Y=+74,按8位二进制可写出:[X]补=______;[Y]补=______;[X+Y]补=______;[X-Y]补=______答案:1001 0101B;0100 1010B;1101 1111B;0100 1011B分析:107=16×6+11=6BH ∴ [X]补=0-6BH=95H ;74=16×4+10=4AH ∴ [Y]补=4AH ;[-Y]补=0-[Y]补=B6H [X+Y]补=95H+4AH=DFH ;[X-Y]补=[X]补+[-Y]补=95H+B6H=4BH或[X-Y]补=[X]补-[Y]补=95H-4AH=4BH (有溢出,结果出错)9.110101.11B=______D答案:53.75 分析:11 0101B=35H=16×3+5=53D 0.11=1×2-1+1×2-2=0.7510.若[X]补=0011 0011B,[Y]补=1100 1100B,则[X-Y]补=______B,运行结果对状态标志ZF、SF、OF的影响为______、______、______。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2020/7/13
12
数据寄存器
地址指针及 变址寄存器
通用寄存器组
控制寄存器组
段寄存器组
School of Automation Science and Electrical Engineering
1. 8086/8088微处理器结构
通用寄存器特点
– 一般,通用寄存器可以用于任何指令的任意操作,可以相 互替换;
– 等待状态Tw – 空闲状态Ti
2020/7/13
19
School of Automation Science and Electrical Engineering
Reset引脚复位后相关寄存器的初始状态(*)
寄存器 标志寄存器
初始状态 清0
寄存器 IP
初始状态 0000H
CS SS 指令队列缓冲器
1. 8086/8088微处理器结构
BIU/指令队列缓冲器
• 8088为4字节,8086为6字节。
• EU与BIU的协同工作:取指令和执行指令可以并行
BIU/IP—指令指针寄存器 BIU/总线控制逻辑电路 BIU/地址加法器
20位地址加法器,它将段寄存器提供的段地址自动乘以 10H,即左移4位,再与16位的偏移地址相加,并锁存在 物理地址锁存器中。
数据 寄存器
指针和变址 寄存器
通用寄存器
AB(20位 )
AH AL AX BH BL BX
地址 加法器 ∑
CH CL CX
DH DL DX SP
CS DB(16位 )
BP
DS
SI
SS
DI
ES
ALU 数 据 总 线 (16位 )
IP 内部寄存器
总线控制 电路
8086总 线 DB(16位 )
暂存寄存器
ALU
– 对外8条数据线 – 20条地址线 – 1 MB 存储器寻址空间 ,64K I/O 寻址空间
2020/7/13
6
School of Automation Science and Electrical Engineering
1. 8086/8088微处理器结构
8086/8088微处理器功能结构
组成:由总线接口单元(BIU)和执行单元构成(EU) • BIU:由指令队列、指令指针、段寄存器、地址加法器 和总线控制逻辑电路等组成,负责CPU对存储器和外设 进行访问。
3、8086/8088微处理器工作方式
时序
– 总线周期:是指CPU与存储器或I/O端口进行一次访问所 需要的时间,至少由4个时钟周期组成。(什么情况下执 行总线周期?)
– 指令周期:是指CPU执行一条指令所(取指、译码、读写 操作、完成)需要的时间。
CLK
T1 T2 T3 T4 T1 T2 T3 T4 Ti Ti
EU 控制电路
(8位 ) 指令队列缓冲器
123456
标志寄存器 执 行 单 元 (EU) 总 线 接 口 单 元 (BIU)
8080指令队列4个字节
2020/7/13
11
School of Automation Science and Electrical Engineering
8086/8088寄存器结构
2020/7/13
BHE
A0
读/写的字节
0
0
高低两个字节
0
1
奇数地址的低位字节
1
1
不传送
A19~A1
SEL
A19~A1
高位(奇地址)库 512K x 8
D15~D8
SEL
A19~A1
低位(偶地址)库 512K x 8
D7~D0
8086存储体 分高低字节 。
D7~D0
17
School of Automation Science and Electrical Engineering
寻址方式 (固定寻址、立即数寻址、寄存器寻址)
– 固定寻址(隐含寻址):操作数并不直接出现在指令中, 而是由操作码隐含地指定为某一固定内容
PUSHF / POPF
AAA
– 立即数寻址 操作数以8位或16位常数的形式直接出现在指 令中,可给寄存器或内存变量赋值
MOV AX,2000H / MOV [2100H], 3450H
– 16位的数据寄存器可分解为2个8位的寄存器使用; – 地址寄存器不能分解为8位使用;
2020/7/13
13
School of Automation Science and Electrical Engineering
1. 8086/8088微处理器结构
段寄存器
– 4个16位段寄存器CS、DS、SS、ES用来识别当前可寻址 的四个段,每个段的功能各不相同
• EU:由ALU、通用寄存器组(数据寄存器组、指针寄 存器组、变址寄存器组)、标志寄存器和指令译码逻辑 等组成,负责指令的译码、执行和数据的运算。
2020/7/13
7
School of Automation Science and Electrical Engineering
1. 8086/8088微处理器结构
– CS:代码段寄存器,指示当前执行程序所在存储器的区域。 – DS:数据段寄存器,指示当前程序所用之数据的存储器区
域。 – SS:堆栈段寄存器,指示当前程序所用之堆栈位于的存储
器区域。 – ES:附加段寄存器,指示当前程序所用之数据位于的另外
存储器区域,在字符串操作中常用到。
2020/7/13
14
FFFFH 0000H
清0
DS ES 其他寄存器
0000H 0000H 0000H
2020/7/13
20
School of Automation Science and Electrical Engineering
3、8086/8088微处理器工作方式
最大方式和最小方式 MN/MX(33引脚)
高电平时,工作于最小方式(一般接电源电压) – 构成小规模的应用系统,单处理器模式 – CPU本身提供所有的控制信号
低电平时,工作于最大方式(一般接电源地) – 构成较大规模的应用系统,多处理器模式,可以接入 数值协处理器8087 – CPU和总线控制器8288共同形成系统控制信号
2020/7/13
21
School of Automation Science and Electrical Engineering
4. 8086/8088寻址方式
BIU和EU功能框图
通 用
数据寄存器组
寄 存
指针寄存器组
器 组
变址寄存器组
ALU数据总线
暂存寄存器
ALU
EU 控制器电路
AB
∑
DB
段寄存器组
IP寄存器 内部暂存器
总线
8086总线
控制电路 16位数据总线
指令队列
标志寄存器
2020/7/13
8
School of Automation Science and Electrical Engineering
源操作数的例子
立即数 立即寻址
MOV AX,1200H
寄存器 寄存器寻址
MOV AX,BX
直接寻址
MOV AX,[1200H]
寄存器间接寻址 MOV AX,[DI]
存储器 寄存器相对寻址 基址变址寻址
MOV AX,[BX+1200H] MOV AX,[BX+DI]
相对基址变址寻址
MOV AX, [BX+DI+1200H]
School of Automation Science and Electrical Engineering
标志寄存器F
1-低4位向高4位有进、借位
15
0-低4位向高4位无进、借位
OF DF IF TF SF ZF
1-低8位有偶数个1
0-低8位有奇数个1
0
AF PF CF
注: •红色是6个状 态标志位; •兰色是3个标 志控制位
微机原理复习
2013.6.20
School of Automation Science and Electrical Engineering
第2章 微型计算机组成基础
2.1 微机数字电路基础(Digital Circuit Basis) 2.2 几种数制之间的相互转换(Numbering System
15 8 7 0
AX AH AL 累加器 BX BH BL 基址寄存器 CX CH CL 计数寄存器 DX DH DL 数据寄存器
SP 堆栈指针 BP 基址指针 SI 源变址指针 DI 目的变址指针
IP 指令指针 FLAG 标志寄存器
CS 代码段寄存器 DS 数据段寄存器 SS 堆栈段寄存器 ES 附加段寄存器
2.1 微机数字电路基础
门电路及真值表(Gate Circuit & Truth Table)
A B
&Y
A B
≥1
Y
A B
=1 Y
A
1
Y
2020/7/13
3
School of Automation Science and Electrical Engineering
译码芯片及应用
– 3-8译码器 74LS138
总线周期
时钟周期
2020/7/13
18
School of Automation Science and Electrical Engineering
总结T1 ,T2 ,T3 ,T4状态的基本特点 – T1送地址: – T2设状态:高4位状态,低16位高阻 – T3送数据:CPU和存储器或端口传数据,高4位维持状态 – T4结束: