Intel and Amd are designed on x86 CISC architecture. Arm is designed on RISC Architecture.
Risc: Emphasis on software Single-clock, reduced instruction only.
It works like this.
Register to register: "LOAD" and "STORE" are independent instructions. Low cycles per second, large code sizes. Spends more transistors on memory registers.
X86/CISC: Is more hardware based. It uses little-endian byte order. Where the least significant bytes get stored in lower address spaces.
It works like this:
JA Jump if Above
JAE Jump if Above or Equal
JB Jump if Below
JPO Jump if Parity Odd
JS Jump if Sign
JZ Jump if Zero
Note: Cisc is essentially the opposite of RISC.
As for performance, there are pros and cons to each. Neither is really faster or slower.
Risc pros and cons.
1. Instruction scheduling can make debugging difficult.
2. Performance of a RISC processor depends greatly on the code that it is executing. If the programmer (or compiler) does a poor job of instruction scheduling, the processor can spend quite a bit of time stalling.
1. Since a simplified instruction set allows for a pipelined, superscalar design RISC processors often achieve 2 to 4 times the performance of CISC processors.
2. Because the instruction set of a RISC processor is so simple, it uses up much less chip space; extra functions, such as memory management units or floating point arithmetic units, can also be placed on the same chip.
CISC Pros and Cons.
1. Many specialized instructions aren't used frequently enough to justify their existence.
2. CISC instructions typically set the condition codes as a side effect of the instruction. Not only does setting the condition codes take time, but programmers have to remember to examine the condition code bits before a subsequent instruction changes them.
1. The ease of microcoding new instructions allowed designers to make CISC machines upwardly compatible: a new computer could run the same programs as earlier computers because the new computer would contain a superset of the instructions of the earlier computers.
2. As each instruction became more capable, fewer instructions could be used to implement a given task. This made more efficient use of the relatively slow main memory.
3. Because microprogram instruction sets can be written to match the constructs of high-level languages, the compiler does not have to be as complicated.
· 8 years ago