微机原理复试面试(二)
1.操作数寻址方式
(1)立即寻址
操作数直接包含在指令中的寻址方式称为立即寻址方式。
(2)寄存器寻址
操作数存放在CPU内部的某个8位、16位或32位的通用寄存器中。无需访问存储器,故执行速度快。
(3)存储器操作数寻址
直接寻址
操作数所在内存单元的有效地址EA直接出现在指令中。
寄存器间接寻址
操作数所在内存单元的有效地址由规定的寄存器指出。
寄存器相对寻址
操作数所在内存单元的有效地址为规定的基址寄存器或变址寄存器的内容与一个常量(即位移量)之和。
基址变址寻址方式
操作数的有效地址是一个基址寄存器和一个变址寄存器的内容之和。
相对基址变址寻址方式
操作数所在内存单元的有效地址是基址寄存器、变址寄存器 的内容与一个常量(即位移量)之和。
比例变址寻址方式
操作数的有效地址是变址寄存器的内容乘以比例因子再加上位移量之和。
基址比例变址寻址方式
操作数的有效地址是变址寄存器的内容乘以比例因子再加上基址寄存器的内容之和。
相对基址比例变址寻址方式
操作数的有效地址是变址寄存器的内容乘以比例因子,加上基址寄存器的内容,再加上位移量之和。
2.转移地址寻址方式
(1)段内寻址
需要改变IP的内容
。
段内直接转移、段内间接转移。
(2)段间寻址
需要改变IP和CS的内容
。
段间直接转移、段间间接转移。
3. CPU完成加法运算时,加数和被加数存放在哪里,运算后结果又存放在哪里,运算 结果的特征放在哪里?
加数——暂存器TMP;被加数和结果——累加器ACC;特征——标志寄存器FR。
4.为什么要规定标准总线?各种总线中最基本的信息总线是哪些?
规定标准总线,主要是便于不同厂家生产的功能芯片、模块和整机可以被用户按自己需求组成各种计算机应用系统,并可以使各级产品(芯片、模块、设备)的兼容性、互换性和可维护性、可拓展性从根本上得到保证。
5.采用一种总线标准进行微机计算机的硬件结构设计具有什么优点?
为适应用户不断变化的要求,微机系统设计必须采用模块化设计,不同的模块组合形成一定的功能。模块之间的连接关系采用标准的总线结构可使不同功能的模块便于互连,兼容性好、生命周期长。模块采用标准化总线结构设计可使模块的生产供应规模化、多元化、价格低,有利于用户。
6.微处理器中采用流水线技术后,每条指令的执行时间是否缩短了?为什么?
没有缩短,因为流水线技术只是减少了CPU取指令所需的等待时间,从而来提高CPU的利用率,所以每条指令的执行时间不变。
7.何为高级语言?说明高级语言源程序在计算机中运行,一般要经过什么处理操作?
高级语言是相对汇编语言来说的,它比汇编语言可读性更好,编写更方便,可移植性更强,但效率低,运行速度慢。使用高级语言编写的应用程序需要有相应的语言处理程序将其翻译成机器语言才能执行源程序。
8.如何比较两个符号数的大小?
cmp ax, bx指令执行后,
sf=1且of=0,得到的结果为负数,而且没有溢出,说明实际的结果与得出的结果一致,则ax<bx;
sf=1且of=1,得到的结果为负数,而且有溢出,说明实际的结果与得出的结果不一致 则 ax>bx;
sf=0且of=1,得到的结果为非负数,而且有溢出,说明实际的结果与得出的结果不一致则ax<bx;
sf=0且of=0,得到的结果为非负数,而且没有溢出,说明实际的结果与得出的结果一致则ax>bx。
9.堆栈的存取原则
先进后出FILO;堆栈区中的每个数据叫做堆栈元素,将数据存入堆栈称为压栈,从堆栈中取出数据叫做弹栈,最后压入堆栈区的元素称为栈顶元素。由于堆栈区只有一个出入口,因此压栈和弹栈总是在栈顶进行,导致栈顶元素所在位置的地址会随着每一次压栈和弹栈操作而改变。
10.程序计数器PC的作用是什么?一般情况下,PC的内容如何变化?改变PC的内容意 味着什么?
PC用于存放下一条要执行的指令在存储器中存放的地址,通常称为PC指针。一般情况下,程序中的各条指令一般均顺序存放在存储器中,一个程序开始执行时,PC中保存的二进制信息为该程序第一条指令所在的地址。微处理器总是以当前的PC的值为指针,从所指定的存储单元中取指令。每从存储器中取一个字节的指令,PC指针的内容就自动加1,当从存储器中取完一条指令的所有字节进入执行指令时,PC中存放的信息便是下一条将要执行的指令的地址。改变PC的内容意味着把新的目标地址装入PC,可使微处理器转向新的目标地址开始执行程序。
11.微机从外部看由哪几部分组成?并列举各部分的主要部件。
从外部看由主机和外设组成。主机的核心内容在主机箱内,包括主板、CPU、内存、I/O适配器、电源、硬盘等。外设种类繁多,典型的有键盘、鼠标、显示屏、打印机、光盘驱动器、摄像头等。
12.80486有哪些寄存器,各有什么用途,实地址方式下哪些寄存器可以用来指示存储 器的偏移地址?
(基本寄存器)
通用寄存器(EAX,EBX,ECX,EDX,ESI,EDI,ESP,EBP):用于变量数据或地址的存储和算术逻辑运算。
指令指针寄存器EIP:用于保存下一条预取指令相对于代码段段基址的偏移量。
标志寄存器:用于存放程序执行过程和结果的各状态标志。
段寄存器(CS,DS,ES,FS,GS,SS):用于决定程序当前使用存储器的区域。
(系统级寄存器)
控制寄存器(4个):用于存放全局特性的机器状态,控制片内Cache,FPL和分段、分页单元的工作。
系统地址寄存器:存储保护模式下常用的数据基地址、界限和其他属性,以确保快速性。
(调试和测试寄存器)
使设置数据断点和ROM断点的功能更加先进,增强系统的可测性。
(浮点寄存器)
进行浮点运算的专用寄存器。
实地址方式下,BX,SI,DI,BP,SP,IP可用来指示存储器的偏移地址。
13.80486存储器为什么要分段,分段原则是什么?
8086/8088分段是为了解决在16位字长的机器里怎么提供20位地址的问题。程序员在编制程序时将存储器划分为段,每个段内地址空间是线性增长的。每段的大小可达64 KB,这样段内地址可以用16位表示。存储器分段的方法虽然给程序设计带来一定的麻烦,但这种方法可以扩大存储空间,而且对于程序的再定位也是很方便的。
存储器的分段不是唯一的,各段之间可以连续、分离、部分重叠或完全重叠。这取决于各个段寄存器的预置内容。一个具体的存储单元,可以属于一个逻辑段,也可以同属几个逻辑段。
14.什么是堆栈?堆栈主要应用于什么场合?
堆栈是个特殊的存储区,主要功能是暂时存放数据和地址。通常用来保护断点和现场。
15.伪指令的作用是什么?试指出汇编语句和伪操作语句的不同点。
伪指令的主要作用是为汇编程序和连接程序提供信息。
汇编语句是可执行语句,可以产生机器代码,功能由硬件完成;伪指令是不可执行语句,无对应的机器指令,汇编时不形成代码,仅为汇编和连接程序提供编译和连接信息,功能由软件完成。
微机原理复试面试(二)相关推荐
- 微机原理复试面试(一)
1.微机原理的组成 硬件系统 控制器.运算器.存储器.输入输出设备. 软件系统 系统软件.应用软件. 2.硬件结构 单总线结构 系统总线 双总线结构 存储器总线.I/O总线 双层总线结构 局部总线.全 ...
- 内存中有两个4字节以压缩的bcd_高中对口计算机微机原理04第一二章测验
原理第一.二章练习 一.选择题 1.下列四个不同进制的数中,数值最大的是__________ A. 1001001B B. 110 O C. 71D D. 4AH 2.下列四种不同数制表示的数值最小的 ...
- 微机原理复试问题整理
微处理器.微型计算机.微型计算机系统三者的定义及其区别. 微处理器:由一片或几片大规模集成电路组成的中央处理器.微处理器是微型计算机的运算和控制指挥中心,主要由运算器.控制器.寄存器组(阵列)以及内总 ...
- 微型计算机原理指令系统问题,微机原理复习题(指令系统).doc
微机原理复习题(指令系统) <微机原理>复习题二 一.选择题 1.假设外部设备的状态字已经读入AL寄存器,其中最低位为"0",表示外部设备"忙", ...
- 微型计算机指令系统例题,微机原理复习题(指令系统)
微机原理复习题(指令系统) <微机原理>复习题二 一.选择题 1.假设外部设备的状态字已经读入AL寄存器,其中最低位为"0",表示外部设备"忙", ...
- 西安电子科技大学计算机复试题目,西安电子科技大学考研复试 微机原理练习题...
<西安电子科技大学考研复试 微机原理练习题>由会员分享,可在线阅读,更多相关<西安电子科技大学考研复试 微机原理练习题(26页珍藏版)>请在人人文库网上搜索. 1.微型计算机原 ...
- 考研复试C语言微机原理,放福利,初试数模电,复试微机原理和C的进来看看
本帖最后由 99terry 于 2013-4-17 15:34 编辑 我10年毕业的,工作两年多,去年7月份辞职,8月份开始备考,本科学的焊接技术与工程,跨考电工理论,二本出生,好在年纪不大,90年的 ...
- 微型计算机中存储器分成哪几个等级?它们各有什么特点?用途如何?,《微机原理》复习思考题第十二章存储器.DOC...
<微机原理>复习思考题第十二章存储器 第章 存储器 ?????????????????????????????????????????????????????????? ????????? ...
- Android面试Hash原理详解二
Hash系列目录 Android面试Hash原理详解一 Android面试Hash原理详解二 Android面试Hash常见算法 Android面试Hash算法案例 Android面试Hash原理详解 ...
最新文章
- 【附申请地址】阿里云网盘,开放申请啦!非会员下载 10MB/s!有图有真相!
- python之np.var()函数解析
- (win10 64位系统中)Visual Studio 2015+OpenCV 3.3.0环境搭建,100%成功
- 利用丁香园数据生成疫情分布地图(R语言)| 博文精选
- matlab语言转化为python语言_matlab语言转译成python
- Google发布全球首个72量子比特处理器Bristlecone预览
- 图像分类系统之功能实现概要
- Quartus仿真步骤
- Win12系统或新增“灵动岛”设计 截图曝光
- 郭天祥的10天学会51单片机_第十节
- MarkDown 标题居中
- Androidadb驱动实现原理
- NDK OpenGL ES 3.0 开发(五):FBO 离屏渲染
- Win10更新后,无音量,显示未安装任何音频设备,解决方法,2021-9-15
- 我也有拖延症,你呢?
- 基于cocos2d-x简易泡泡龙游戏
- 负重前行的电信运营商
- 疫情期间居家所需物品清单
- 这个横行霸道的美食,也是中秋节的一大特色,我用Python爬取京东1546条大闸蟹商品数据带大家看看
- 教学ppt设计与制作
热门文章
- mysql数据库工具
- js获取当前浏览器页面高度及宽度信息的方法
- 【精品分享】C/C++框架和库
- C语言-代码实现十进制转二进制输出
- solr和lucene_Lucene,Solr和Elasticsearch中的印度尼西亚语言
- 「FlutterBug」FlutterBoost启动黑屏处理(升级空安全版本)
- 宇宙中有三恒星系统吗?如果有,三颗恒星该如何绕行呢?
- pandas 根据某一列的值修改某一列的值
- 利用深度摄像头生成仿激光数据并构建地图
- 计算机科学 教育部评估,教育部全国第四轮学科评估结果(A+、A类学校)汇总...