O microprocessador deve ter 16 bits (justificativa formal)
, :
R — ( )
A — ( )
C — ( )
, ( — , ):
A =
C = 2 ^
RA conformidade com essa condição significa que qualquer célula pode acomodar o endereço de qualquer outra célula e também contém informações abrangentes sobre a ação que está sendo executada. Reduzir o espaço de endereço é repleto de links para a memória inexistente e um aumento de informações redundantes necessárias para garantir a capacidade de endereçar toda a memória. A mesma coisa com espaço de comando. Assim, nosso conjunto hipotético não deixa de ser infinito, mas se torna mais definível.Existem outras condições que atendem aos critérios acima e são óbvias sem aprofundar os detalhes do desenvolvimento de uma arquitetura de baixo nível? Sim, existe pelo menos uma dessas condições:R = 2 ^ n Aconformidade com esta condição significa que, para especificar o número de bits em uma célula, é necessário um número inteiro de bits (novamente, um excesso ou uma falta aqui é indesejável por razões de facilidade de escrita e confiabilidade do código da máquina )Obviamente, n = 4 é o valor mínimo aceitável, pois 256 bytes de memória com n = 3 são adequados apenas para a programação de guirlandas de Natal. Em n= 5, obtemos a quantidade de memória correspondente aos últimos avanços em TI. Mas se assumirmos que o principal objetivo da memória endereçada pelo processador é armazenar o código da máquina (mecanismo), e os dados que esse mecanismo manipula devem ser movidos para fora do espaço de endereço (ou seja, se assumirmos que os dispositivos externos serão seus portadores), essa quantidade de memória (16 GB) será claramente redundante. De fato, na RAM dos computadores modernos, apenas uma pequena parte da memória cai para o compartilhamento do código da máquina, o restante são dados. Além disso, a separação de código e dados no nível do hardware é bastante consistente com a idéia de um bom estilo no design do microprocessador e na programação da linguagem assembly. Em megabits de código de máquina escritos em acme efetivo (desde que os dados sejam retirados do endereço da RAM endereçado pelo processador),pode acomodar um eixo completo. Se essa memória não for suficiente (por exemplo, para implementar multitarefa), você poderá usar vários processadores, porque a "divisão do trabalho" no campo da TI também, via de regra, contribui para a conveniência de desenvolver programas e a eficácia de seu funcionamento. Em princípio, para implementar multitarefa, nada pode acontecer com um processador: podemos, por exemplo, implementar uma interface rápida para troca de dados entre a RAM e a memória externa - felizmente, uma pequena quantidade de RAM permite atualizá-lo não sequencialmente, mas em paralelo (em um "quadro"), portanto que qualquer parte da memória do processador pode ser substituída em alguns instantes.Como regra geral, contribui para a conveniência de desenvolver programas e a eficácia de seu funcionamento. Em princípio, para implementar multitarefa, nada pode acontecer com um processador: podemos, por exemplo, implementar uma interface rápida para troca de dados entre a RAM e a memória externa - felizmente, uma pequena quantidade de RAM permite atualizá-lo não sequencialmente, mas em paralelo (em um "quadro"), portanto que qualquer parte da memória do processador pode ser substituída em alguns instantes.Como regra geral, contribui para a conveniência de desenvolver programas e a eficácia de seu funcionamento. Em princípio, para implementar multitarefa, nada pode acontecer com um processador: podemos, por exemplo, implementar uma interface rápida para troca de dados entre a RAM e a memória externa - felizmente, uma pequena quantidade de RAM permite atualizá-lo não sequencialmente, mas em paralelo (em um "quadro"), portanto que qualquer parte da memória do processador pode ser substituída em alguns instantes.para que qualquer parte da memória do processador possa ser substituída em alguns instantes.para que qualquer parte da memória do processador possa ser substituída em alguns instantes.Estou convencido de que quaisquer obstáculos causados pela limitação da quantidade de memória endereçável a um megabyte podem ser facilmente contornados por meio da implementação de hardware da troca de dados com memória externa. A vantagem de usar uma arquitetura de dezesseis bits, além das considerações acima, pode receber uma justificativa formal, a saber:R % n = 0 Aconformidade com essa condição significa que em uma célula de memória você pode colocar um número inteiro de valores no intervalo [0 .. R -1] (por exemplo, para n = 5, essa condição não é atendida - nesse caso, Rigual a 32 bits não é divisível por 5 sem restante). Como a capacidade do processador é um parâmetro fundamental, essa propriedade pode se tornar muito útil no futuro.E, finalmente, o principal argumento a favor do número 16, que é a base da arquitetura de baixo nível, é o fato de definir a quantidade ideal de espaço de comando - o processador PDP-11 pode servir como exemplo (assim como a maioria dos processadores modernos, cuja expansão da capacidade de bits praticamente não teve efeito) em seu sistema de comando).Para maior clareza, darei uma sequência que reflete a natureza fundamental das justificativas acima:2 ^ 0 = 12 ^ 1 = 22 ^ 2 = 4 (= n )2 ^ 4 = 16 (= R )2 ^ 16 = 65536 (= A = C )Também vale a pena mencionar que desde que a TI começou a se desenvolver em um ritmo frenético, talvez nem uma única solução completa tenha sido proposta. Mesmo o PDP-11 (na minha opinião, a implementação mais bem-sucedida) dificilmente usará o espaço de comando em mais de 50% - uma parte bastante significativa é o código de backup, além de abordar métodos formalmente válidos (já que se enquadram nas regras gerais), mas realmente não utilizados, porque levam ao congelamento garantido do programa (MOV - (PC), ...) ou simplesmente inútil (MOV R1, R1).Em outras palavras, no campo da tecnologia da informação, a “roda” ainda não foi inventada, bem, ou todas elas não são bem “redondas” - o que torna o “ciclismo” não inteiramente conveniente. Talvez por esse motivo, os computadores “primitivos” (BK, DVK, Spectrum, ...) ainda estejam sendo muito procurados até hoje. Por exemplo, como uma pessoa com experiência em programação, as modernas tecnologias de software, com todo seu poder e confiabilidade, lembram Frankenstein, causando contradições estéticas. Embora isso seja mais agradável do que perturbador, a invenção de rodas não inventadas é o meu hobby. Talvez eu não seja o único que esteja pensando nessa direção e alguém ache essa atividade interessante.Source: https://habr.com/ru/post/pt383567/
All Articles