MIT-6.004计算结构(2019年春)
L01: Introduction
略
L02: RISC-V Assembly
1、计算机处理器主要有三部分组成:内存、寄存器、算数逻辑单元
算数逻辑单元与寄存器通信,寄存器与内存通信,而算术逻辑单元与内存无法通信
2、Instruction Set Architecture(ISA)
以 RISK-V ISA为例,包含32个寄存器,data width = 32 bits
寄存器与内存区别:
(待补图)
3、Computational Instructions
Arithmetic:add,sub
Comparisons:slt,sltu
Logical:and,or,xor
Shifts:sll,srl,sra
4、Control Flow Instructions
beq ==
bne !=
blt <
bge >=
bltu,bgeu(unsigned version)
5、example
if x1 >= x2: x3=x1+1
else: x3=x2+2
bge x1, x2, else
addi x3,x1,1
else: addi x3,x2,2
6、jal:Unconditional jump and link
7、jalr:Unconditional jump via register and link
8、寄存器的32bits如何分配?
32bits---operation(10 bits)
---source register address(5 bits)
---destination register address(5 bits)
---只剩12bits留给数据存储,这就是数据大小的限制
MIT-6.004计算结构(2019年春)的更多相关文章
- YTU 2577: 小数计算——结构体
2577: 小数计算--结构体 时间限制: 1 Sec 内存限制: 128 MB 提交: 978 解决: 647 题目描述 小数可以看成是一个点和两个数组成的,因此可以定义成一个小数的结构体,现在 ...
- 计算结构体、数组、指针的sizeof
1. 结构体的sizeof 题目: sturct aa{ in num; char name[10];}; struct bb{ int a; float b; struct aa c;}; stru ...
- sizeof()计算结构体的大小
简要说明:结构体成员按照定义时的顺序依次存储在连续的内存空间,但是结构体的大小并不是简单的把所有成员大小相加,而是遵循一定的规则,需要考虑到系统在存储结构体变量时的地址对齐问题. 一.没有成员的结构体 ...
- 2019年春招Android方向腾讯电话面试
第一问:TCP与UDP的区别 参考答案: 1.基于连接与无连接 2.TCP要求系统资源较多,UDP较少: 3.UDP程序结构较简单 4.流模式(TCP)与数据报模式(UDP); 5.TCP保证数据正确 ...
- 【洛谷2019 OI春令营】期中考试
T68402 扫雷 题目链接:传送门 题目描述 扫雷,是一款单人的计算机游戏.游戏目标是找出所有没有地雷的方格,完成游戏:要是按了有地雷的方格,游戏失败.现在 Bob 正在玩扫雷游戏,你作为裁判要判断 ...
- 【动态规划】洛谷2019 OI春令营 - 普及组 作业
[P1464 Function] [题解] 按照题目意思进行递归即可,但是过程中需要用到记忆化搜索. #include<bits/stdc++.h> using namespace std ...
- 【贪心】洛谷2019 OI春令营 - 普及组 作业
[P3817 小A的糖果 小A有N个糖果盒,第i个盒中有a[i]颗糖果. 小A每次可以从其中一盒糖果中吃掉一颗,他想知道,要让任意两个相邻的盒子中加起来都只有x颗或以下的糖果,至少得吃掉几颗糖. [贪 ...
- 【数据结构】洛谷2019 OI春令营 - 普及组 作业
[P3662][USACO17FEB]Why Did the Cow Cross the Road II S 求解连续的k个数的最大值,利用前缀和维护即可. #include<bits/stdc ...
- 2019年春PAT甲级考试
这次考试不是很理想,一道题目没能做完. 自己原因差不多三条: 1.自己实力不够,准备时间也有点仓促,自己没能做到每道题目都有清晰的思路. 2.考试的心理素质不行,因为设备原因东奔西跑浪费了挺多时间,自 ...
随机推荐
- ES6--数组部分基础知识
数组Array的相关方法 1.Array.from()方法 Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象 ...
- 微信小程序简单封装图片上传组件
微信小程序简单封装图片上传组件 希望自己 "day day up" -----小陶 我从哪里来 在写小程序的时候需要上传图片,个人觉得官方提供的 Uploader 组件不是太好用, ...
- 简单操作elasticsearch(es版本7.6)
简单操作elasticsearch(es版本7.6) es 官方文档 https://www.elastic.co/guide/index.html 简单操作elasticsearch主要是指管理索引 ...
- .netcore实现jwt身份验证
前言 http协议本身是一种无状态的协议.所以客户端的每次请求,服务端是不清楚其身份的,需要客户端每次都要将身份信息传入,服务进行验证,才能达到安全验证的目的. 传统的Web用户验证:1.客户端传入用 ...
- 【Kata Daily 190911】Multiplication Tables(乘法表)
题目: Create a function that accepts dimensions, of Rows x Columns, as parameters in order to create a ...
- 一款基于.NET Core的认证授权解决方案-葫芦藤1.0开源啦
背景 18年公司准备在技术上进行转型,而公司技术团队是互相独立的,新技术的推动阻力很大.我们需要找到一个切入点.公司的项目很多,而各个系统之间又不互通,导致每套系统都有一套登录体系,给员工和客户都带来 ...
- ArrayList使用及原理
之前面试时,经常被问到ArrayList的原理,今天整理了一些ArrayList的使用原理和必问的知识点. ArrayList的继承关系 定义一个ArrayList的方法 ArrayList的三个构造 ...
- Java集合系列-HashSet
原创文章,转载请标注出处:https://www.cnblogs.com/V1haoge/p/10755431.html 一.概述 HashSet是基于哈希实现的set集合,其实它底层是一个value ...
- 解决IE9弹出json下载提示框
<!-- 开启注解 --> <mvc:annotation-driven> <mvc:message-converters> <bean class=&quo ...
- js给多级复杂动态变量赋值
1 function SetVal(field, val) { 2 var arr = field.split("."); 3 var str = arr[0]; 4 if (wi ...