-->

Anuncio!

Terraria: Circuito somador

Bom galera, nesse pequeno artigo vou mostrar um simples circuito somador binário usado as portas logicas no jogo terraria. Lembrando que as portas logicas são constantemente usadas em eletrônica digital para o desenvolvimento de circuitos mais complexos como o próprio processador da máquina. Como é um somador binário ficamos limitados apenas a dois estados: alto nível e baixo nível (5v e 0v na vida real), o numero em si é junção de cada bit como um todo formando uma sequência de uns e zeros que é equivalente aquele determinado número final. Podemos converter de binário para decimal e vice-versa, fazendo algumas operações matemáticas de multiplicação e divisão (não vou abordar sobre isso nesse artigo). A seguir, tem uma pequena tabela de decimal para binário para facilitar essa conversão:
decimal = binário
0 = 0
1 = 1
2 = 10
3 = 11
4 = 100
5 = 101
6 = 110
7 = 111
...

Para esse artigo, usei apenas um número de 2 bits que permite incrementar apenas 1 bit a ele (como resultado ele pode ter no máximo o numero 100 em binário ou 4 em decimal devido ao carry), embora esse meu circuito seja apenas de 2bits com incremento de um único bit, é possível construir circuitos maiores e mais complexos também (exemplo um somador de 64 bits usado nas máquinas atuais).
Abaixo temos uma tabela da verdade de todas as possibilidades do nosso somador:
00 + 0 = 000
01 + 0 = 001
00 + 1 = 001
01 + 1 = 010
10 + 0 = 010
10 + 1 = 011
11 + 0 = 011
11 + 1 = 100

Podemos ver na próxima imagem, o exemplo do nosso somador onde temos alavancas representando a entrada de dados (sendo as duas da ponta o número em si e a alavanca do meio o incremento), as tochas representa a nossa saída de dados:



Se puxarmos a alavanca 11 vamos ter como resultado 11 nas tochas, devido 11 + 0 ser igual a 11 (ou 3 + 0 = 3 em decimal)



Por outro lado, se tivermos o número 01 e incrementar 1 a ele, vamos ter como resultado o número 10 (em decimal seria 1+1=2):



Se tivermos as duas alavancas acionadas formando o numero binário 11 e incrementarmos mais 1 a ele, então vamos ter como resultado 100 (é equivalente a operação 3+1=4 em decimal)



A lógica do circuito é bastante simples, a porta logica XOR tem uma saída verdadeira se as duas entradas forem diferentes. Se as duas entradas forem iguais a saída será falsa. Com base nessa lógica temos o nosso somador devido ao número 1 incrementado com 1 e o resultado vai ser o número 0. Para nós fazermos a lógica do "vai um" (carry) para a parte mais significativa do número usamos a porta logica AND multiplexada junto com a entrada da XOR, a porta lógica AND terá uma saída verdadeira quando as duas entradas forem verdadeiras também, caso contrario será falso. Essa lógica descrita anteriormente seria para cada um dos bit do nosso número, ou seja, cada bit vai ter uma lógica semelhante que deve receber o carry anterior e tratar ele para o incremento do bit atual.
Abaixo podemos ver os wires e a lógica para o somador de 2 bits no jogo:



Essa lógica aplicada no terraria também é possível na vida real usando circuitos verdadeiros, como o CI 7486 para a porta XOR com o CI 7408 para a porta AND (isso fica para um futuro tutorial quem sabe!? XD), podemos ver abaixo o exemplo do mesmo circuito sendo simulado no proteus:



Bom galera, esse artigo é bastante simples e é apenas para demostrar um somador binário usando as portas logicas no terraria, embora simples é possível expandir criar coisas bem mais complexas com ele inclusive desenvolver um ALU ou até mesmo um processador completo dentro jogo.
Compartilhar:
← Anterior Proxima → Inicio

Um comentário:

Formulário de contato

Nome

E-mail *

Mensagem *

Sites Parceiros

Anuncio No Post

Anuncio No Post

Anuncio Aqui!