下面的3条指令执行后,CPU几次修改IP?
下面的3条指令执行后,CPU几次修改IP?
都是在什么时候?最后IP中的值是什么?
mov ax, bx
sub ax, ax
jmp ax
一共修改了4次。
第1次:从存储器中读取mov ax, bx指令之后,IP立即改变,指向下一条指令(sub ax, ax)的地址。
第2次:从存储器读取sub ax, ax之后(在此之前,会先执行mov ax, bx指令),IP立即改变,指向下一条指令(jmp ax)的地址。
第3次:从存储器读取jmp ax指令之后(在此之前,会先执行完sub ax, ax指令),IP立即改变,指向下一条指令的地址,这里由于下一条指令没有标明,所以不知道,反正此时IP的值是紧挨jmp ax之后的地址。
第4次:执行jmp ax指令后。jmp指令是通过修改IP的值来达到使程序执行跳转的目的的,因此执行jmp之后,IP的值变为ax(此时值为0)的值,所以修改为了0。
如果程序继续执行,那么IP的值是存储器中0位置指令的下一条指令的地址。
(上面的解释是在没有考虑指令预取、多条流水等情况下成立的!)
下面的3条指令执行后,CPU几次修改IP?相关推荐
- 下面的 3 条指令执行后, cpu 几次修改 IP? 都是在什么时候? 最后 IP 中的值是多少?
1 2 3 mov ax,bx sub ax,ax jmp ax 第1次:从存储器中读取mov ax, bx指令之后,IP立即改变,指向下一条指令(sub ax, ax)的地址. 第2次:从存储器读取 ...
- 31条指令单周期cpu设计(Verilog)-(二)总体设计
目录 31条指令单周期cpu设计(Verilog)-(一)相关软件 31条指令单周期cpu设计(Verilog)-(二)总体设计 31条指令单周期cpu设计(Verilog)-(三)指令分析 ...
- 31条指令单周期cpu设计(Verilog)-(十)上代码→顶层模块设计总结
说在前面 开发环境:Vivado 语言:Verilog cpu框架:Mips 控制器:组合逻辑 设计思路 按照预先设计好的数据通路图将各个模块连接起来 `timescale 1ns / 1ps mod ...
- python循环体执行的次数与其他不同的是_下面的Python循环体的执行次数与其他不同的是()...
下面的Python循环体的执行次数与其他不同的是() 答:i=0 while(i<=10): print(i) i=i+1 懒扎衣动作主要包括掤.肩靠.肘击:穿掌.护身掌.铲脚技法.(?) 答: ...
- 31条指令单周期cpu设计(Verilog)-(三)指令分析
说在前面 开发环境:Vivado 语言:Verilog cpu框架:Mips 控制器:组合逻辑 鸽鸽鸽... 指令分析流程 确定一条指令所需要的具体操作 分析该条指令涉及的部件 确定各个部件的输入输出 ...
- 31条指令单周期cpu设计(Verilog)-(四)数据输入输出关系表
说在前面 开发环境:Vivado 语言:Verilog cpu框架:Mips 控制器:组合逻辑 表格作用 这张表用于设计整体的数据通路图 (在第二篇中已经给出来了),而这张总图是用于设计Verilog ...
- 31条指令单周期cpu设计(Verilog)-(八)上代码→指令译码以及控制器
说在前面 开发环境:Vivado 语言:Verilog cpu框架:Mips 控制器:组合逻辑 指令译码器 我们需要根据一条32位的指令的结构确定是哪一条指令 可以根据操作码(op)以及功能码(fun ...
- 31条指令单周期cpu设计(Verilog)-(六)指令操作时间表设计
说在前面 开发环境:Vivado 语言:Verilog cpu框架:Mips 控制器:组合逻辑 这张表格又是干啥的呢(+_+)? 废话少说,用来设计控制器的 (红色方框) 设计流程 1. 表头为3 ...
- 31条指令单周期cpu设计(Verilog)-(一)相关软件
说在前面 开发环境:Vivado 语言:Verilog cpu框架:Mips 计算机组成原理课程终于结束了,由于以下均为课程学习过程中的内容,所以难免存在各种错误,各位大佬轻喷 相关软件 vivado ...
最新文章
- ubuntu 系统相关有用的配置
- AjaxFileUpload 在C#中应用
- 编译opencv4.2时出现undefined reference to `jpeg_default_qtables‘错误的解决方案
- 使用uicollectionView时需要注意的问题
- react 流程图框架_【赠书】Preact(React)核心原理详解Preact(React) 核心原理解析...
- ACM Robot Motion
- PHP系列(十三)PHP会话控制
- c语言定义int 输出4386,C语言 · 矩阵乘法
- 电视android怎么连接手机助手下载,电视与手机怎么连接?最实用的三种小技巧!...
- asp.net 网页做一个浮动层_网页的布局与定位看完这篇就够了
- hαbits的意思_h【snail吧】_百度贴吧
- 【图文】Allegro测量工具同时显mil和mm
- Attention Is All You Need
- 流媒体后视镜方案关键技术--调节后视图像显示范围
- java 输出26个大小写字母
- 红帽linux7.2安装教程,RHEL 6.2安装(超级详细图解教程) | 系统运维
- 第5-2课:图的拓扑排序
- html ios 视频播放不了,html中的video标签在ios微信中无法播放的解决方法之一
- 关于阅读英语文献的一些整理方法
- 计算机专业大学生应该在大学四年踏实学哪些东西?
热门文章
- pwm波程序如何实现_【优秀成果】如何做好算法与程序实现教学的知识储备
- mysql+rsyslog,loganalyzer+mysql+rsyslog中央日志服务器对syslog的web管理
- js控制文件拖拽,获取拖拽内容。
- VMware 虚拟机克隆 CentOS 6.5 之后,网络配置问题的解决方案
- 在Linux系统中应用su和sudo
- 中国强制应用市场下架所有非认证开发者提交的应用
- Android源码下 进行cts测试 和 cts的注意事项。
- 关于最新版FCKeditor上传漏洞错误解决办法
- 有序链表转换二叉搜索树
- 读《现代软件工程--构建之法》所思