Is 8051 a RISC processor or a CISC processor?
thank you ece tech
CISC, with all the possible adressing modes on the instructions (not just the "move memory to register" ones).
"CISC, with all the possible adressing modes on the instructions"
although the actual number of instructions is quite small!
So, taking the words at face-value, it is quite "simple" relative to something "complex" like a Pentium; It is also quite "simple" relative to something like the ARM - which is RISC!
"CISC" and "RISC" have to do with design philosophy rather than raw counts of numbers of instructions...
"'CISC' and 'RISC' have to do with design philosophy..."
Once they get into marketing blurb, they become pure buzzwords with (virtually) no technical meaning at all...!
:-(
So the real question is: why do you need to know? An 8051 is what it is, irrespective of how you choose to label it!
The instruction set is fully described in Chapter 2 of the so-called "bible" for the 8051 - read it, and make up your own mind:
Chapter 1 - 80C51 Family Architecture: www.nxp.com/.../80C51_FAM_ARCH_1.pdf
Chapter 2 - 80C51 Family Programmer's Guide and Instruction Set: www.nxp.com/.../80C51_FAM_PROG_GUIDE_1.pdf
Chapter 3 - 80C51 Family Hardware Description: www.nxp.com/.../80C51_FAM_HARDWARE_1.pdf
Well, it's a common misconception that "RISC" has anything to do with the number of instructions or "how much work" a single instruction can do. (I know you know that, I'm just mentioning it for everyone, including the OP, who maybe don't know it yet).
RISC systems can have amazingly powerful instructions (ARM, for example, has a "count leading zeros" instruction, and a variety of multiply-accumulate instructions, and conditional execution, and implicit bit-shifts ... so one instruction can do a _lot_ of work.).
RISC refers to load-store architectures, where there's one set of instructions (with a variety of adressing modes) that moves data to and from the CPUs registers, and another set of instructions (which only address registers) that manipulate/process data in the CPUs registers.
Since "data manipulation" instructions on the '51 can use lots of adressing modes (for example, an ADD can add a register, a direct byte, an indirect byte, or immediate data to a register), the '51 can be considered a CISC architecture.
8051 RISC or CISC?
yes
Erik
I guess the 8051 predates the distinction between "CISC" and "RISC" - so the correct answer is, "neither - it's an 8051"
;-)