CISC(Complex Instruction Set Computers,复杂指令集计算集)和RISC(Reduced Instruction Set Computers)是两大类主流的CPU指令集类型,其中CISC以Intel,AMD的X86 CPU为代表,而RISC以ARM,IBM Power为代表。RISC的设计初衷针对CISC CPU复杂的弊端,选择一些可以在单个CPU周期完成的指令,以降低CPU的复杂度,将复杂性交给编译器。举一个例子,CISC提供的乘法指令,调用时可完成内存a和内存b中的两个数相乘,结果存入内存a,需要多个CPU周期才可以完成;而RISC不提供“一站式”的乘法指令,需调用四条单CPU周期指令完成两数相乘:内存a加载到寄存器,内存b加载到寄存器,两个寄存器中数相乘,寄存器结果存入内存a。按照此思路,早期的设计出的RISC指令集,指令数是比CISC少些,单后来,很多RISC的指令集中指令数反超了CISC,因此,引用指令的复杂度而非数量来区分两种指令集。

当然,CISC也是要通过操作内存、寄存器、运算器来完成复杂指令的。它在实现时,是将复杂指令转换成了一个微程序,微程序在制造CPU时就已存储于微服务存储器。一个微程序包含若干条微指令(也称微码),执行复杂指令时,实际上是在执行一个微程序。这也带来两种指令集的一个差别,微程序的执行是不可被打断的,而RISC指令之间可以被打断,所以理论上RISC可更快响应中断。

在此,总结一下CISC和RISC的主要区别:

  1. CISC的指令能力强,单多数指令使用率低却增加了CPU的复杂度,指令是可变长格式;RISC的指令大部分为单周期指令,指令长度固定,操作寄存器,只有Load/Store操作内存
  2. CISC支持多种寻址方式;RISC支持方式少
  3. CISC通过微程序控制技术实现;RISC增加了通用寄存器,硬布线逻辑控制为主,是和采用流水线
  4. CISC的研制周期长
  5. RISC优化编译,有效支持高级语言

参考文献

1. https://cs.stanford.edu/people/eroberts/courses/soco/projects/risc/risccisc/

2. https://en.wikipedia.org/wiki/Reduced_instruction_set_computer

CISC和RISC的区别相关推荐

  1. CISC与RISC的区别?

    CISC是指复杂指令系统计算机(Complex Instruction Set Computer):RISC是指精简指令系统计算机(Reduced Instruction Set Computer). ...

  2. 指令系统-CISC和RISC的区别

    一.什么是指令系统 一个处理器支持的指令和指令的字节级编码,称为其指令集系统 二.指令集发展的途径 CISC(Complex Instruction Set Computer) 复杂指令计算机:进一步 ...

  3. 以下关于CISC和RISC的叙述中,错误的是()【最全!最详细总结!】

    天道酬勤,思者常新. 以下关于CISC和RISC的叙述中,错误的是() A. 在CISC中,复杂指令都采用硬布线逻辑来执行 B. 一般而言,采用CISC技术的CPU,其芯片设计复杂度更高 C. 在RI ...

  4. 计组--CISC和RISC特点和区别

    CISC和RISC特点和区别 CISC(微程序) RISC(硬布线) 指令系统 复杂.庞大 简单.精简 指令数目 一般大于200条 一般小于100条 指令字长 不固定 定长 可访存指令 不加限制 只有 ...

  5. ARM架构、指令集、内核版本、CISC与RISC、ARM产品线

    架构:处理器的硬件架构,称为微架构.用实际的半导体电路,去实现指令集列表的运算操作.日常中的构架很多时候就是说的指令集,像我们说X86构架.X86指令集,最后表达出的意思都差不多.实际中架构和指令集也 ...

  6. 关于CISC和RISC的一些总结

    CISC和RISC 首先先来介绍一下两个名词,毕竟我第一次看到这个题目,也有一点点懵,所以,先来讲述一下各自的含义. CISC (Complex Instruction Set Computer) 复 ...

  7. 【软考学习4】计算机构成——CPU 结构、Flynn 分类法、CISC和RISC

    CPU 结构.Flynn 分类法.CISC/RISC都是软考中较为常见的知识点,需要了解每种类型的特征.它们之间的区别. 一.CPU结构 数学家 冯·诺依曼 认为,计算机应当分为以下五个部分: 运算器 ...

  8. 那些年的那些事CISC和RISC发展中的纠缠

    本文来自http://www.cnbeta.com/articles/224544.htm ARM.ARM.ARM,没错ARM仿佛一夜之间就火了,平板.手机等领域随处可见它的影子,甚至已经有人预言未来 ...

  9. 计组之指令系统:3、CISC和RISC

    3.CISC和RISC 思维导图 什么是CISC和RISC? 对比 思维导图 什么是CISC和RISC? 对比

最新文章

  1. stm32F042 (二) 按键触发中断
  2. IntelliJ IDEA 18 周岁,吐血推进珍藏已久的必装插件
  3. c语言 结构体映射,内存管理之4:页面映射中的结构体
  4. Cordova:安卓启动页图片变形
  5. linux内核3.4基于wakeup_source的autosleep机制分析
  6. java读取 info.plist源码_Java 解析 IPA 文件,读取 Info.plist 信息-Go语言中文社区
  7. hibernate与jpa_将JPA Hibernate与OptaPlanner集成
  8. CharacterEncodingFilter作用
  9. nginx main error_page
  10. Pytorch专题实战——前馈神经网络(Feed-Forward Neural Network)
  11. 如何安装win10与linux双系统,Windows10与CentOS 双系统共存完美教程
  12. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 10课
  13. JavaScript浮点运算的问题
  14. 如何让自己电脑的鼠标指针变的更炫酷来看看这个吧
  15. 小米游戏本0909bios_小米笔记本电脑全家族介绍
  16. 密码学和Java加密与解密技术
  17. linux不可用于文件名的符号,Linux 文件名中包含特殊字符
  18. Git 常用命令大全-转载
  19. 【FastGAN】★Towards Faster and Stabilized GAN Training for High-fidelity Few-shot Image Synthesis
  20. Java版简易画图板的实现

热门文章

  1. python 百分号调用内置函数_建议你吃透python这68个内置函数!
  2. [15元]人体行为检测和识别毕业论文讲述
  3. amCharts 5.1.12 Crack
  4. matlab dx dy dt,dx/dt=y,dy/dt=-sinx,求大神帮忙编一个MATL? 爱问知识人
  5. 斐波那契数列(经典兔子繁殖问题)
  6. IDEA 设置终端管理员权限
  7. 仿淘宝头像上传功能(一)——前端篇。
  8. 新坑首发《每晚一个恐怖的IT技术学习小故事》让我们一边学习技术,一边体验恐惧吧~
  9. 论文阅读_Reducing Test Cases with Attention Mechanism of Neural Networks
  10. Windows server 2016 安装sql server