微码 (英语:microcode),又称 微指令 ,是在CISC结构下,运行一些功能复杂的指令时,所分解一系列相对简单的指令。相关的概念最早在1947年开始出现。
基本介绍中文名 :微码 外文名 :Microcode 别称 :微程式 简介,微程式设计技术,指令集架构,指令集的分类,机器语言,复杂指令集,参见, 简介 微指令 (英语:microcode),又称 微码 ,是在CISC结构下,运行一些功能复杂的指令时,所分解一系列相对简单的指令。相关的概念最早在1947年开始出现。 微指令的作用是将机器指令与相关的电路实现分离,这样一来机器指令可以更自由的进行设计与修改,而不用考虑到实际的电路架构。与其他方式比较起来,使用微指令架构可以在降低电路复杂度的同时,建构出复杂的多步骤机器指令。撰写微指令一般称为微程式设计(microprogramming),而特定架构下的处理器实做中微指令有时会称为微程式(microprogram)。 现代的微指令通常由CPU工程师在设计阶段编写,并且存储在唯读记忆体(ROM, read-only-memory)或可程式逻辑数组(PLA, programmable logic array)中。然而有些机器会将微指令存储在静态随机存取记忆体(SRAM)或是快闪记忆体(flash memory)中。它通常对普通程式设计师甚至是汇编语言程式设计师来说是不可见的,也是无法修改的。与机器指令不同的是,机器指令必须在一系列不同的处理器之间维持兼容性,而微指令只设计成在特定的电路架构下运行,成为特定处理器设计的一部分。 微程扰物晌式设计技术 微程式设计技术,指的是用软体技术来实现硬体设计的一种技术。 指令集架构 指令集架构 (英语:Instruction Set Architecture,缩写为ISA),又称 指令集 或 指令集体系 ,是计算机体系结构中与程式设计有关的部分,包含了基本数据类型,指令集,暂存器,定址模式,存储体系,中断,异常处理以及外部I/O。指令集架构包含一系列的opcode即 *** 作码(机器语言),以及由特定处理器执行的基本命令。 指令集体系与微架构(一套用于执行指令集的微处理器设计方法)不同。使用不同微架构的电脑可以共享一种指令集。例如,Intel的Pentium和AMD的AMD Athlon,两者几乎采用相同版本的x86指令集体系,但是两者在内部设计上有本质的区别。 一些虚拟机器支持基于Smalltalk,Java虚拟机,微软的公共语言运行时虚拟机所生成的位元组码,他们的指令集体系将bytecode(位元组码)从作为一般手段的代码路径翻译成本地的机器语言,并通过解译执行并不常用的代码路径,全美达以相同的方式开发了基于x86指令体系的VLIW处理器。 指令集的分类 复杂指令集计算机包含许多应用程式中很少使用的特定指令,由此产生的缺陷是指令长度不固定。精简指令集计算机通过只执行在程式中经常使用的指令来简化处理器的结构,而特殊 *** 作则以子程式的方式实现,它们的特殊使用通过处理器额外的执行时间缓锋来弥补。理论上的重要类型还包括最小指令集计算机与单指令集计算机,但都未用作商业处理器。另外一种衍生类型是超长指令字,处理器接受许多经过编码的指令并通过检索提取出一个蚂哪指令字并执行。 机器语言 机器语言是由声明和指令所组成的。在处理结构上,一个特定指令指明了以下几个部分:用于算术运算,定址或者控制功能的特定暂存器;特定存储空间的地址或偏移量;用于解译 *** 作码的特定定址模式。复杂的 *** 作可以借由将简单的指令合并而达成,可以(在冯·诺依曼体系中)连续的执行,也可以藉控制流来执行指令。 复杂指令集 复杂指令集 (英文: Complex Instruction Set Computing ;缩写: CISC )是一种微处理器指令集架构,每个指令可执行若干低阶 *** 作,诸如从记忆体读取、储存、和计算 *** 作,全部集于单一指令之中。与之相对的是精简指令集。 复杂指令集的特点是指令数目多而复杂,每条指令字长并不相等,电脑必须加以判读,并为此付出了性能的代价。 在精简指令集处理器发迹以前,许多电脑架构尝试跨越“语义鸿沟”──设计出借由提供“高阶”指令支援高阶程式语言的指令集,诸如程式调用和返回,循环指令诸如“若非零则减量和分支”和复杂定址模式以允许数据结构和阵列存取以结合至单一指令。与复杂指令集相比,精简指令集实现更容易,指令并行执行程度更好,编译器的效率更高。 属于复杂指令集的处理器有CDC 6600、System/360、VAX、PDP-11、Motorola 68000家族、x86等。 参见微架构计算机系统结构
微程陵租序是由多个机器指令组成的机器指令集,程序则是为了完成某一应用功能所编写的代码的集合。简单一点,微程序是机器指令级别的,程序是高级语言级别的。
一种用于解决实际问题的机器指令的有序集合,包括子程序、分支、循环和其他结构,存储在主存中,可以更新和修改;
微程序设计是一组有序的微指令。微尺消程序设计是传统程序设陵汪知计方法在控制逻辑设计中的应用。因此,微程序也可以有微子程序、分支、循环等结构。
扩展资料:
微程序和程序的区别
1、不同的系统
是用某种编程语言编写的,运行在某种目标架构上。微程序存储在控制内存CM中,控制内存CM只能读取,不能更改。CM中的所有微程序解释并执行整个指令系统中的所有机器指令。
2、编译是不同的
通常,程序是用高级语言编写的,然后在编译期间由编译器/解释器翻译成机器语言以执行。
在某些情况下,也可以用汇编语言进行编程,汇编语言经过机器语言的修改,用文字代替0和1,如Add用于添加,Mov用于传递数据等。
微纳睁码(Microcode),也叫做微程序,是指一个 CPU 的指令集作为一微码指令(微指令)的序列,其中每个典型地由很多位域和下一个闭正微指令执行的地址组成。微码是机器指令和计算机初等变换之间的转换层。微码被存储在 ROM 中和允许新添加的机器指令,不需要它们被设计为电子开关,当新的指令被需要时。一些微指令将通常需要被取得、解码和执行每个机器编码指令。这些元素使微程序/微码与更多熟悉的汇编指令相比存在于一个低的概念水平上。每个元素用"micro"的前缀来区分来防止轿茄悔混淆:微程序,微码,微指令,微汇编程序等。另,小型机上许多部件都有智能功能,高级的部件甚至内嵌一个真正的CPU,这些CPU也需要执行程序,一般存储在自身的FLASH ROM中,当厂家设计出增强功能的程序,支持新硬件或修补bug等就需要更新程序。这些程序即是微码。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)