What are the terms RISC and CISC in relation to software development?

5

My teacher mentioned the two terms RISC and CISC, they seem to me to be some kind of architecture. And software that is developed (compiled) for computers that use RISC can not run on CISC-like computers, even using identical operating systems, but they could not be run.

So, I have some doubts about the terms RISC and CISC and the development of software for these architectures.

Questions

  • What are the terms RISC and CISC?
  • Because software compiled for CISC can not run on a RISC computer or vice versa?
  • asked by anonymous 28.09.2017 / 04:59

    1 answer

    6

    To development very little. They are different types of architectures. Today this distinction is more nebulous, the same processor ends up having both forms.

    It is not even that the executable can not change from one model to another, it is that it can not change from one specific architecture to another since the set of instructions is completely different. an ARM and a MIPS are RISC and can not carry between them.

    CISC ( Complex instruction set computer ) which is the most common form of use of Intel is characterized by having more instructions macros that perform things in a somewhat more abstract way generally consuming multiple clock cycles. They tend to produce somewhat less executable, but with less predictable performance. Usually has an extra consumption of internal processing, not the processing of your code, which can consume more energy, generate more heating and it is usually more complicated to program in your Assembly. But you can have some facilities too, and have some specific processing gains.

    RISC ( Reduced instruction set computer ) whose largest representative today is the ARM has very simple instructions that makes the minimum required, so they generate larger executables, although it is already possible to optimize this, and has a more predictable processing. By having fewer abstractions it is simpler to program on it. Abstractions are left to another level. This simplicity is because the instructions are always the same size and the processor does not have to deal with it.

    One of the very different features is how communication with memory is done .

    It only matters for development when programming in Assembly, even so tangentially.

        
    28.09.2017 / 13:40