Arquitetura risc e cisc
No inicio dos anos 70, os compiladores eram muito pobres e pouco robustos, e a memória era lenta e muito cara causando assim sérias limitações no tamanho do código, levou a que uma certa corrente previsse uma crise no software. O hardware era cada vez mais barato e o software cada vez mais caro. Um grande número de projetistas defendiam que a única maneira de contornar os grandes problemas que se avizinhavam era mudar a complexidade do (cada vez mais caro) software e transportá – la para o (cada vez mais barato) hardware. Se houvesse uma função mais comum, que o programador tivesse de escrever vezes sem conta num programa, porque não implementar essa função em hardware? Afinal de contas o hardware era barato e o tempo do programador não. Esta ideia de mover o fardo da complexidade do software para o hardware foi a ideia impulsionadora por trás da filosofia CISC, e quase tudo o que um verdadeiro CISC faz tem esse objetivo. Alguns projetistas sugeriram que uma maneira de tornar o trabalho dos programadores mais fácil seria fazer com que o código assembly se parecesse mais com o código das linguagens de alto nível. Este tipo de arquitetura era CISC levado ao extremo. A sua motivação primária era reduzir o custo global do sistema fazendo computadores para os quais fosse mais fácil de programar. Ao simplificar o trabalho dos programadores, pensava – se que os custos seriam mantidos num nível razoável. Aqui estão algumas das principais razões para se promover este tipo de arquitetura: Reduzir as dificuldades de escrita de compiladores; Reduzir o custo global do sistema; Reduzir os custos de desenvolvimento de software; Reduzir drasticamente o software do sistema; Reduzir a diferença semântica entre as linguagens de programação e máquina; Fazer com que os programas escritos em linguagens de alto nível corressem mais eficientemente; Melhorar a compactação do código; Facilitar a detecção e correção de erros. Se