É assim que são transmitidos os dados? - Eletrônica - Clube do Hardware
É assim que são transmitidos os dados?
Por cesar3m, 22 de junho de 2014 em Eletrônica
cesar3m 5
Estive estudando teoria da computação e cheguei a um pensamento até agora de como são transmitidos os dados... gostaria que me corrigissem e me explicassem melhor caso eu esteja enganado...
1.Primeiro vi o que é bit: é uma unidade que corresponde a um estado de chaveamento de um transistor, 0 é aberto, 1 fechado, 0 é sem passagem de corrente, 1 é com passagem de corrente... certo?
2.Os dados são baseados nestas informações, o usuário informa à máquina uma instrução, esta instrução chega ao CPU por meio de um dispositivo (teclado, mouse), e o CPU retransmite estas informações às memórias... Primeiro passa pela memória Cache, depois a memória RAM e enfim ao HD, alguns dados são armazenados temporariamente pelo HD (virtualização)...
3. Agora: a tecla 'a' em linguagem binária seria: 01100001 ; eu quero entender o seguinte se isto funciona assim:
Coluna 8 . Coluna 7. Coluna 6 . Coluna 5 . Coluna 4 . Coluna 3 . Coluna 2 . Coluna 1
Se cada coluna representa uma capacidade de tensão maior do que a coluna antecedente, assim: coluna 2 se em estado 1 tem maior tensão que a coluna 1 em estado 1. Pois minha conclusão, espero que entendam, é que os dados são identificados pela tensão somada de cada coluna, por exemplo:
letra a = Xvolts = coluna7_volts + coluna6_volts + coluna1_volts;
A ideia que tenho de que cada coluna têm-se uma tensão maior que a antecedente é baseada no fato de que:
01100001 e 11000100 não correspondem ao mesmo dado. Correto?
Se estou certo até aqui, pelas minhas conclusões, agora vou estudar como funciona um teclado e a transmissão de dados no monitor.... Se eu estiver errado, peço que me corrigem por favor... Caso não entendam minha lógica, é só dizerem, tentarei explicar de outra forma...
nem vou consultar outra fonte de informação com google etc... porque é muita coisa
um bait: são 8 bits mas não altera a tensão por causa da posição que esse dado esta alocado no bait não .
quanto a transmissão desse dados tem a ver com mux e demux na eletrônica te aconselho a estudar portas lógicas mas na computação te aconselho a compra o livro de Gabriel torres não é porque ele é dono deste fórum não mas é porque ele explica muito bem http://www.casasbahia.com.br/Hardware-Versao-Revisada-e-Atualizada-Gabriel-Torres-1980471.html
Editado 22 de junho de 2014 por circuit
tonz 2
A sua lógica está incorreta. A tensão é a mesma em qualquer bit, sendo 0=ausência de tensão e 1=presença de tensão.
O número binário segue a mesma lógica do número decimal, só trabalha em uma base diferente. Imagine que você tivesse apenas 2 dedos nas mãos ao invés de 10, como você faria a contagem dos números. Ao invés de representar usando dígitos de 0 a 9, a representação no binário limita-se a usar 0 a 1.
Presença e ausência de tensão é apenas uma forma do hardware representar e armazenar os dados em formato binário. Ele armazena e lê bit a bit, não há essa interdependência que você imaginou na soma de tensões.
Em uma arquitetura de 8 bits, um dado é representado por um sequência de 8 bits e não por uma tensão.
Se fosse uma arquitetura de 16 bits, cada dado ocuparia uma sequência de 16 bits.
Quando a CPU recupera um dado da memória, os dados trafegam em paralelo por bus que contém 8 linhas (ou 16, ou 32, etc) e ela recebe cada um dos bits e não apenas uma informação única de tensão.
Sobre a arquitetura também não está correto seu pensamento, você precisa ler mais sobre arquitetura de computadores. Mas saiba que há algumas pequenas variações dependendo de como uma determinada arquitetura foi projetada.
Continue estudando, esse é o caminho.
vtrx 697
3.487 posts
@cesar3m,comece lendo um bom livro sobre eletrônica digital.
aphawk 2.781
@cesar3m,
Bom, o caminho é esse , mas as conclusões estão incorretas :
- A informação sempre é gravada em bits, que podem assumir o estado 0 ou 1 . Por convenção, nível 1 é quando o bit possui tensão, e nivel 0 é quando o bit não possui tensão nenhuma. Normalmente utiliza-se 5V para sinalizar tensão.
- Esses bits sempre são agrupados em conjuntos, iniciando em NIBBLE ( 4 bits juntos ) , BYTE ( 8 bits ) , WORD ( 16 bits ) e por aí vai.
Quando falamos da capacidade de bits de uma CPU, referimos aos dados que podem ser armazenados em um único registro dela. E também indica o numero de bits que podem circular em seu bus de dados, em modo paralelo, isto é, todos ao mesmo tempo.
Aqui neste Fórum, tratamos sobre MICROCONTROLADORES, que geralmente são de 8 bits , ( mas claro que existem de 16 bits e de 32 bits ), e eles não possuem memória cache.
voce deve estar se referindo a MICROPROCESSADORES, que hoje em dia são em grande maioria de 32 e 64 bits, e todos possuem vários níveis de memória cache. E claro que as velocidades são muito superiores aos microcontroladores.... mas não fazem nada a mais do que isso , pois não possuem os periféricos integrados.
- Não confunda o fato de passar corrente ou não em algum transistor com 0 ou 1 . Isto não diz nada.
- O fato de o código da letra "A" ser esse deve-se à uma padronização muito antiga, quando os dados eram transmitidos serialmente em baixa velocidade. Não tem nada a ver com o sinal que um teclado gera, mas sim com a padronização ASCII, muito utilizada por sistemas Baudot.
- Quando usamos um teclado em um microcontrolador, normalmente ele é feito por um arranjo de linhas e colunas. Quando apertamos uma tecla, estamos cruzando uma linha e uma coluna, e através de uma tabela, trocamos pelo símbolo equivalente, que no caso seria a sua letra "A" .
Mas originalmente sempre fazemos algo chamado varredura, que é acionar uma coluna de cada vez, e a seguir lemos todas as linhas; depois passamos para outra coluna, e assim sucessivamente. Portanto, sempre teremos em um cruzamento apenas um único bit nas linhas e um único bit nas colunas; com essa informação procuramos em uma tabela e achamos o equivalente , que seria a nossa letra "A".
Já um teclado de computador possui todo um funcionamento dedicado, e o circuito do teclado hoje envia os dados pela porta USB, e o sistema operacional identifica na tabela a letra "A" . Mas internamente, também é feito de linhas e colunas !
- Finalmente, sobre o seu exemplo de colunas :
voce tem de estudar primeiro de tudo o código binário ! Cada bit tem um peso relativo , de acordo com a sua posição. Não tem nada a ver com tensão, mas sim com numeros a serem processados. E o que se soma são esses "pesos" , que faz o resultado. Por exemplo o binário 1001 tem dois pesos a serem somados, que sã0 8 + 1 = 9. Já o binário 0111 tem os pesos 4+2+1 = 7 . Mas volto a falar : isto não tem nada a ver com somar tensões !
Um microcontrolador de 8 bits aceita apenas numeros entre 0 e 255 ( faça 2 elevado à 8 e subtraia 1 ) ; um de 16 bits aceita entre 0 e 65535 ( faça 2 elevado á 16 e subtraia 1 ) . Não estamos nos referindo a tensões, esses numeros podem significar qualquer coisa que for necessária !
Minha sugestão para voce é pesquisar sobre código binário.
Editado 22 de junho de 2014 por aphawk
Por convenção, nível 1 é quando o bit possui tensão, e nivel 0 é quando o bit não possui tensão nenhuma.
Só uma observação é que para um bit ser considerado 1 não é necessário que seja a tensão máxima de referencia e o mesmo para bit 0,então numa tensão de 5v,bit um pode estar entre 3.5 e 5v e bit zero entre 0 e 1.5v ,como exemplo,que depende da família lógica usada.