Página 1 de 1

quantidade de bits nos microcontroladores

MensagemEnviado: 22 Out 2006 08:41
por roberto
Pesquisei na net e todos os artigos que falam sobre microcontroladores de 16 ou 18 bits são muito complicados de entender. Alguem poderia me dar uma ideia do que realmente significa dizer que um microcontrolador é de 16 bits ou 18 bits?
Roberto

MensagemEnviado: 22 Out 2006 14:05
por __JEREK__
olá Roberto, essa denominação se deve a maior variável que o microcontrolador pode suportar, microcontroladores 16bits podem fazer contagens ou acumular números até 65536. Se quiser valores maiores que esse terá que acumular em 2 variáveis.

essa tabela feita no excel mostra o valor máximo das variáveis:
Imagem


isso influencia tambem o modo como vc pode fazer a interface do seu programa, por exemplo, em 16bits vc consegue fazer no máximo interfazes estilo DOS, já com 32bit vc consegue fazer interface estilo Windows.

procurei imegens para exemplificar a interface estilo 16Bits e 32Bits mas não encontrei.

alguem me corrija se eu estiver errado.

MensagemEnviado: 23 Out 2006 00:37
por msamsoniuk
a quantidade de bits no microcontrolador e microprocessadores refere-se normalmente ao tamanho natural do inteiro usado na arquitetura. bom, qualquer processador possui registros internos, de uso geral, que sao usados pelas instrucoes durante operacoes logicas e matematicas. o tamanho destes registros expressa justamente o tamanho natural do inteiro e as facilidades de enderecar memoria.

por exemplo, o 6502, 8085, Z80 e HC08, HCS08 e PIC sao exemplos de arquiteturas que possuem um acumulador, que eh utilizado na maioria das instrucoes e seu tamanho eh de 8 bits, portanto, sao processadores de 8 bits. no caso dos 8086, 80186 e 80286, o acumulador possui um tamanho de 16 bits e, portanto, sao processadores de 16 bits. finalmente, os 68000, powerpc, pentium e outros possuem registros de uso geral de 32 bits, de modo que o tamanho natural dos inteiros pode ser de 32 bits e sao, dessa forma, processadores de 32 bits. embora eu jah tenha ouvido falar de processadores de 4 a 36 bits e existam DSPs que usam inteiros de tamanhos variados, nao conheco nenhum com inteiros de 18 bits.

enfim, vc vai escolher cada um deles conforme a sua aplicacao e custo. seria dificil imaginar um processador de 8 ou 16 bits trabalhando com graficos, pq uma tela de 1024x768 iria requerer capacidade de enderecar quase 1MB de memoria de video. por outro lado, nao teria logica colocar um powerpc de 1GHz com 512MB de memoria em um mouse: um PIC faria o mesmo trabalho e custaria menos.

MensagemEnviado: 26 Out 2006 21:47
por Wagner de Queiroz
ei !
Os barramentos do chip nao contam nao ?

MensagemEnviado: 26 Out 2006 23:20
por msamsoniuk
definitivamente nao, pois a maior densidade de uso em um microcontrolador envolve justamente os registros de dados on-chip, onde sao realizadas a maioria das operacoes logico-matematicas. entao a largura dos registro de dados eh um fator muito mais importante que a largura do barramento de memoria, por exemplo. de forma similar, a largura do barramento interno fica de pequena importancia se nao afetar os resultados. um caso classico eh o 68000, que possui todos os barramentos internos e externos com largura de 16 bits, mas ninguem percebe isso, pq o microcodigo mascara e torna transparente o uso de operandos de 32 bits. gracas a essa transparencia, o software de 32 bits criado no 68000 vai rodar normalmente. e, devido a compatibilidade de ser 32 bits, vai rodar muito mais rapidamente em um 68020, que realmente possui barramentos internos de 32 bits. outro caso classico eh o pentium: embora a familia 386 seja formada por processadores de 32 bits, o pentium possui um barramento de dados externo de 64 bits, o que permite trafegar dados com muito mais velocidade entre o processador e memoria. por outro lado, o pentium ainda limita suas operacoes logico-matematicas em 32 bits, portanto ainda eh um processador de 32 bits. alternativamente, o 386SX possui a mesma capacidade de 32 bits internamente que os outros, mas um economico barramento externo de 16 bits.