Tudo começa no procesador

OBSERVAÇÃO: Este é o primeiro artigo de uma série que discute as diferentes abstrações que fazem parte da computação.

O uso da computação se tornou ubíquo graças à evolução da eletrônica, simbolizada pelos microprocessadores. Estes dispositivos, construídos a partir da combinação da química do silício com as chamadas terras raras, são circuitos eletrônicos miniaturizados que combinam um número muito grande de transistores para realizar operações binárias.

Transístores nada mais são que espécies de chaves que permitem ou não a passagem de sinais elétricos. Essa característica os torna bastante adequados para o desenvolvimento de dispositivos que trabalham com lógica binária. Nela as operações são baseadas através da combinação de dois estados - ligado e desligado – daí a praticidade de se usar algo que permita controlar mudanças nesses estados.

Os microprocessadores mais simples e especializados são desenhados para atender objetivos específicos. Assim não é necessário considerar a necessidade de programá-los, pois sua construção embute as funcionalidades que atenderão.

No entanto a maioria dos usos de microprocessadores está na construção de sistemas, quer seja uma central de controle de um veículo automotor da atualidade ou encapsulado num chip que vai num smartphone. Nesse caso um sistema é um conjunto de instruções para realização de diversas atividades, por exemplo, controlar a injeção de combustível ou apresentar informações numa rede social, nos respectivos exemplos de uso citados acima.

A forma primordial para programar um microprocessador, i.e., fazer com que realize tarefas específicas, está no uso do assembly. Este é um tipo de programação voltado especificamente para as instruções de um determinado processador. De qualquer forma, ele já é considerado como uma linguagem de programação, mas com propósito bastante específico e requerendo o conhecimento de como o processador funciona.

O assembly é um primeiro nível de abstração, pois cria instruções que possibilitam um processador realizar operações com finalidades por vezes bastante distintas. Seu uso não é fácil e para se ter uma analogia próxima a como usá-lo, pode-se voltar no tempo das calculadoras de bolso programáveis, onde uma combinação de sequencias de teclas criavam instruções próximas às que se encontram no assembly (por exemplo, o famoso “goto”).

As dificuldades para se programar com assembly remetem ao uso de uma camada de abstração presente em todo equipamento que roda algum tipo de programa: o Sistema Operacional, que será tratado no próximo artigo. 

Pingbacks and trackbacks (1)+

Comentar

  Country flag

biuquote
  • Comentário
  • Pré-visualização
Loading

Sobre o Autor

Experiência de 25 anos na área de informática, trabalhando com programação orientada a objetos desde 1990, arquitetura cliente-servidor desde 1994, aplicações web desde 1997 e arquitetura distribuída desde 1999. Conhecimento de bancos de dados relacionais, ambientes de desenvolvimento visual, criação de páginas Web, metodologias de desenvolvimento e administração de risco. Realizações em levantamentos de sistemas, avaliação de controles, coordenação de projetos de desenvolvimento, auditoria e consultoria.

Meses