É interessante observar que mesmo a abordagem CISC tendo por premissa um complexo conjunto de instruções, ela veio contribuir para a simplificação dos compiladores. Um compilador gera uma sequência de instruções de máquina para cada comando da linguagem de alto nível. Caso existam instruções de máquina que se assemelhem aos comandos de linguagens de alto nível, essa tarefa tornar-se-á mais simples.
Contudo, esse raciocínio vem sendo discutido por pesquisadores adeptos da arquitetura RISC. Eles descobriram que instruções de máquina complexas frequentemente são mais difíceis de serem utilizadas, em virtude de o compilador ter de encontrar os casos em que essas instruções estejam exatamente adequadas a uma dada construção da linguagem. Com o uso de um conjunto complexo de instruções, fica muito mais difícil a tarefa de melhorar (otimizar) o código gerado. Fica difícil minimizar seu tamanho, reduzir o número de instruções executadas e melhorar o desempenho da pipeline de instruções.
Outro argumento utilizado e que merece destaque é a expectativa de que uma arquitetura CISC possa produzir programas menores e mais rápidos. Programas menores têm duas vantagens. A primeira é consumir um menor espaço de memória, resultando na economia desse recurso. Como a memória é, hoje em dia, mais accessível e tornou-se mais barata, essa vantagem deixa de ser tão significativa. A vantagem mais evidente e importante de programas menores é, consequentemente, contribuir para melhorar o desempenho.
O problema com essa linha de raciocínio é que não se pode ter certeza de que um programa compilado para arquitetura CISC será menor que um programa compilado para uma arquitetura RISC correspondente. Em muitos casos, o programa CISC, expresso em linguagem de máquina simbólica, pode ter um número menor de instruções, mas o número de bits de memória ocupada pode não ser significativamente menor.
Essa melhoria de desempenho pode acontecer de duas maneiras:
Processo de virtualização da memória que consiste na subdivisão da memória física em pequenas partições (frames), para permitir uma utilização mais eficiente da mesma. As frames da memória física correspondem a páginas de memória virtual. A alocação de memória é requisitada por páginas, a menor unidade deste método. Cada página é mapeada numa frame de memória através de um processo que chama paginação. (http://pt.wikipedia.org/wiki/Mem%C3%B3ria_paginada).
X