Livro de Python PDF – Capítulo 2: Introdução

Compartilhe:

Para podermos entender a lógica de programação é  necessário a compreensão de determinados conceitos.  Sendo assim, neste primeiro capítulo iremos revisar  conteúdos que,embora básicos, nos ajudarão muito.  

Começaremos com os conceitos de software e hardware  que, juntos, formam o computador como conhecemos. O  hardware é a parte física do computador, formado pela UCP,  pela memória e por dispositivos de entrada e saída.  

A UCP, unidade central de processamento, é responsável  por executar os programas que estão armazenados na  memória. Já a memória é responsável por armazenar as  informações, programas e dados, que serão manipuladas  pela máquina. Por fim, tem-se os dispositivos de entrada e  saída, que são a forma como o computador se comunica com  meio externo, como por exemplo o teclado, mouse e o  monitor.  

O software é a parte não física do computador, ou seja, o  sistema operacional e os programas. O sistema operacional é  o responsável por fazer a comunicação entre o hardware e  os outros programas. Alguns exemplos de sistemas  operacionais são: Mac OS, Windows, Linux e Android. 

Na imagem abaixo nota-se a relação entre software e  hardware: 

O computador é um dispositivo que processa  informações, das quais um bit é a menor parcela possível de  ser processada. Na prática, o bit é um valor binário, ou seja,  assume valores de 0 ou 1, normalmente entendidos como  ligado ou desligado, de forma que vários bits juntos  codificam informações, através do chamado código de máquina. De uma forma mais simples, o código de máquina é quando vemos em um filme alguém hackeando e aparecem várias zeros e uns na tela, como na imagem a seguir: 

Para facilitar a leitura, aglomeramos os bits em grupos, de  forma que cada conjunto de 8 bits é chamado de byte. Um  kB (kilobyte) equivale a 1024 bytes, um MB (megabytes) a  1024kilobytes, um GB (gigabyte) a 1024 megabytes e assim  por diante.  

Foi citado anteriormente que bits são números binários,  mas como funciona o sistema numérico binário?  Cotidianamente, usamos o sistema decimal, que possui o  número 10 como base, utilizando os 10 algarismos que vão  de 0 a 9. Já o sistema binário utiliza apenas dois algarismos:  o 0 e o 1. No sistema binário os números são escritos a partir  de potencias de dois, como no exemplo abaixo: 

Essa transformação é feita da seguinte forma:  

1x(2^4)+1x(2^3)+0x(2^2)+1x(2^1)+1x(2^0) = 16 + 8 + 0 + 2 + 1 = 27  

Por fim, temos também o sistema hexadecimal, que é  composto por 16 algarismos que vão de 0 a F, sendo que A,  B, C, D, E e F substituem, respectivamente, 10,11,12,13,14 e 15.  

Podemos perceber na tabela abaixo a equivalência entre  números binários, decimais e hexadecimais. 

BINÁRIODECIMALHEXADECIMAL
000
111
1022
1133
10044
10155
11066
11177
100088
100199
101010A
101111B
110012C
110113D
111014E
111115F

Como já citado, uma linguagem de programação é a  forma como nos comunicamos com o computador. Essas  linguagens podem ser mais ou menos parecidas com a  linguagem humana. As linguagens de alto nível são as mais  parecidas e as de baixo nível, as menos.  

As linguagens de alto nível são mais simples e fáceis de  aprender, o que as torna mais baratas. Porém, por serem mais parecidas com a linguagem humana, são menos  eficientes se forem analisadas em relação ao aproveitamento  do hardware disponível. Alguns exemplos são: Python, JS  (JavaScript), entre outras.  

Já as linguagens de baixo nível são mais parecidas com a  linguagem de máquina. Por serem mais complexas para o  entendimento humano, elevam o custo da mão-de-obra e o  tempo de solução de problemas. Contudo, aproveitam  melhor o hardware disponível e, por isso, são muito utilizadas  quando o hardware é limitado. O principal exemplo de  linguagem de baixo nível é o Assembly.  

Mas se o computador só entende linguagem de máquina  e nós programamos em diversas outras linguagens, como o  computador nos entende? O responsável por fazer essa  tradução é o compilador ou o interpretador. Dessa forma, o  compilador nada mais é do que um tradutor que, geralmente,  traduz uma linguagem de alto nível em uma linguagem de  baixo nível.

🔗 Para acessar todos os capítulos, visite a página: Livro de Lógica de Programação em Python.

Gabriel Selow
Gabriel Selow
Artigos: 21

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *