程序的指令是RISC还是CISC是由什么决定?编译程序?

我是指生成应用程序的时候

risc(精简指令集计算机)和cisc(复杂指令集计算机)是当前cpu的两种架构。它们的区别在于不同的cpu设计理念和方法。
早期的cpu全部是cisc架构,它的设计目的是要用最少的机器语言指令来完成所需的计算任务。比如对于乘法运算,在cisc架构的cpu上,您可能需要这样一条指令:mul
addra,
addrb就可以将addra和addrb中的数相乘并将结果储存在addra中。将addra,
addrb中的数据读入寄存器,相乘和将结果写回内存的操作全部依赖于cpu中设计的逻辑来实现。这种架构会增加cpu结构的复杂性和对cpu工艺的要求,但对于编译器的开发十分有利。比如上面的例子,c程序中的a*=b就可以直接编译为一条乘法指令。今天只有intel及其兼容cpu还在使用cisc架构。
risc架构要求软件来指定各个操作步骤。上面的例子如果要在risc架构上实现,将addra,
addrb中的数据读入寄存器,相乘和将结果写回内存的操作都必须由软件来实现,比如:mov
a,
addra;
mov
b,
addrb;
mul
a,
b;
str
addra,
a。这种架构可以降低cpu的复杂性以及允许在同样的工艺水平下生产出功能更强大的cpu,但对于编译器的设计有更高的要求。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-01-06
编译程序。处理器也有道理,但是你既然可以在笔记本电脑上编译Arm9的程序,所以还是编译程序。本回答被网友采纳
第2个回答  2009-01-06
处理器
第3个回答  2009-01-06
这个不是有什么决定的。而是处理器当初是按照哪种架构设计的。
第4个回答  2009-01-20
是由处理器芯片决定的,要看你要运行的CUP或MCU是什么;一般x86用的是CISC,不少使用精简指令集单片机用的是RISC。
相似回答