Por que o computador não me entende?

Autor: Dr. Italo Vega (líder do GEMS)

Data: 29/10/2019

Sessão: Fundamentos

GEMS 370– TIDD/Depto de Computação/PUCSP

“Por que o computador não me entende?” tem várias respostas, algumas interessantes, outras perturbadoras quando projetadas nas pessoas. Neste encontro escolhi duas trajetórias de percurso: formalização e compilação. O processo de formalização [1] envolve a criação de uma lógica constituída por uma linguagem formal e de regras sentenciais. Estas definem o conjunto de sentenças sobre as quais a lógica se aplica. Após a formalização, o domínio de estudo, abstraído, torna-se irrelevante para os raciocínios apoiados pela lógica recém criada. Programas de computador resultam da implementação de lógicas formais. Por que será que o computador não me entende?

Além disso, o processo de compilação [2] divide-se em duas grandes fases: análise e geração de código. A primeira dá conta das propriedades do programa, conhecido por programa-fonte. Quais propriedades são identificadas? Aquelas referentes à forma sintática e, em alguns casos, situações contextuais específicas: escopo e tipo. A geração de código, por sua vez, considera as propriedades do programa efetivamente executado pelo computador, conhecido por programa-objeto. Espera-se que o compilador (uma espécie de tradutor da linguagem-fonte para a linguagem-objeto) preserve o processo computacional descrito pelo programa-fonte, restrito à expressividade da linguagem-objeto. Quais instruções básica são encontradas em uma linguagem-objeto? Sabendo que o elemento computacional é a unidade lógico-aritmética (ULA), aquela linguagem de ter expressividade lógico-aritmética. Portanto, pela via da compilação, os processos computacionais que resultam da execução de um programa devem ser combinações das operações lógico-aritméticas da linguagem de máquina: lógica booleana [3] e matemática modular inteira [4]. Por que será que o computador não me entende?

[1] https://en.wikipedia.org/wiki/Formal_system

[2] https://en.wikipedia.org/wiki/Compiler

[3] https://en.wikipedia.org/wiki/Boolean_algebra

[4] https://en.wikipedia.org/wiki/Modular_arithmetic

 

Comments are closed.

Set your Twitter account name in your settings to use the TwitterBar Section.