




























































































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
Lógica de Programação
Tipologia: Notas de estudo
1 / 342
Esta página não é visível na pré-visualização
Não perca as partes importantes!
Lógica de Programação
SUMÁRIO vi
vi www.k19.com.br
SUMÁRIO 2
Seguro Treinamento
Na K19 o aluno faz o curso quantas vezes quiser!
Comprometida com o aprendizado e com a satisfação dos seus alunos, a K19 é a única que pos- sui o Seguro Treinamento. Ao contratar um curso, o aluno poderá refazê-lo quantas vezes desejar mediante a disponibilidade de vagas e pagamento da franquia do Seguro Treinamento.
As vagas não preenchidas até um dia antes do início de uma turma da K19 serão destinadas ao alunos que desejam utilizar o Seguro Treinamento. O valor da franquia para utilizar o Seguro Treina- mento é 10% do valor total do curso.
2 www.k19.com.br
3 SUMÁRIO
Termo de Uso
Termo de Uso
Todo o conteúdo desta apostila é propriedade da K19 Treinamentos. A apostila pode ser utilizada livremente para estudo pessoal. Além disso, este material didático pode ser utilizado como material de apoio em cursos de ensino superior desde que a instituição correspondente seja reconhecida pelo MEC (Ministério da Educação) e que a K19 seja citada explicitamente como proprietária do material.
É proibida qualquer utilização desse material que não se enquadre nas condições acima sem o prévio consentimento formal, por escrito, da K19 Treinamentos. O uso indevido está sujeito às medidas legais cabíveis.
www.facebook.com/k19treinamentos 3
INTRODUÇÃO
C
O que é um Computador?
Atualmente, os computadores estão presentes no cotidiano da maioria das pessoas. Você, prova- velmente, já está acostumado a utilizar computadores no seu dia a dia. Mas, será que você conhece o funcionamento básico de um computador? A seguir, listaremos os principais elementos de um computador e suas respectivas funções.
Registradores
Figura 1.1: Principais elementos de um computador
CPU (Unidade Central de Processamento - Processador): A CPU é o “cérebro” que controla o fun- cionamento dos outros componentes do computador e realiza todo o processamento neces- sário. Esse processamento consiste basicamente na realização de operações matemáticas e operações de armazenamento ou recuperação de dados.
Registradores: Os registradores armazenam os dados que estão sendo processados pela CPU. O acesso ao conteúdo dos registradores é extremamente rápido. Por outro lado, eles não pos- suem muito espaço. Dessa forma, não é possível armazenar uma grande quantidade de infor- mação
Memória RAM: Os dados utilizados pelos programas que estão abertos são armazenados na memó- ria RAM. O acesso ao conteúdo da memória RAM é rápido porém mais lento do que o acesso ao conteúdo dos registradores. Por outro lado, o espaço da memória RAM é bem maior do que o espaço dos registradores.
www.facebook.com/k19treinamentos 1
INTRODUÇÃO 2
Disco Rígido: Os dados armazenados nos registradores e na memória RAM são descartados quando o computador é desligado. O conteúdo que não pode ser descartado ao desligar o computador deve ser armazenado no disco rígido. O acesso ao disco rígido é bem mais lento do que o acesso a memória RAM mas, em geral, o espaço é bem maior.
Os computadores são capazes se comunicar com dispositivos periféricos como teclado, mouse, monitor, caixa de som, impressoras, projetores, entre outros. Eles também são capazes de se comu- nicar com outros computadores. Essa comunicação é realizada através das diversas portas físicas que os computadores possuem. A seguir listaremos algumas portas físicas e as suas respectivas fun- ções.
Ethernet: Utilizada para conectar um computador a uma rede local de computadores. Através dessa porta, um computador pode enviar e receber dados de outros computadores.
Figura 1.2: Porta Ethernet
Paralela: Essa porta foi criada conectar um computador a uma impressora. Hoje, é utilizada tam- bém para conectar computadores a scanners, câmeras de vídeo, entre outros dispositivos.
Figura 1.3: Porta Paralela
PS/2: Teclados e mouses antigos são conectados aos computadores através dessa porta.
Figura 1.4: Porta PS/
USB: Atualmente, é a porta mais utilizada. Diversos dispositivos são conectados aos computadores através das portas USB. Por exemplo, teclados, mouses, impressoras, celulares, HDs externos, entre outros.
Figura 1.5: Porta USB
2 www.k19.com.br
INTRODUÇÃO 4
Decimal Binário 0 0 1 1 2 10 3 11 4 100 5 101 6 110 7 111 8 1000 9 1001 10 1010
Decimal Binário 11 1011 12 1100 13 1101 14 1110 15 1111 16 10000 17 10001 18 10010 19 10011 20 10100 21 10101
Decimal Binário 22 10110 23 10111 24 11000 25 11001 26 11010 27 11011 28 11100 29 11101 30 11110 31 11111 32 100000 Tabela 1.1: Representação decimal e binária
Os textos também são manipulados pelos computadores em formato binário. Normalmente, cada caractere de um texto corresponde a uma sequência de oito 0s e 1s. Os caracteres são mapea-
alguns caracteres de acordo com o padrão ASCII.
Caractere Binário A 01000001 B 01000010 C 01000011 D 01000100 E 01000101 F 01000110 G 01000111 H 01001000 I 01001001 J 01001010 K 01001011
Caractere Binário L 01001100 M 01001101 N 01001110 O 01001111 P 01010000 Q 01010001 R 01010010 S 01010011 T 01010100 U 01010101 V 01010110
Caractere Binário W 01010111 X 01011000 Y 01011001 Z 01011010 a 01100001 b 01100010 c 01100011 d 01100100 e 01100101 f 01100110 g 01100111 Tabela 1.2: Representação binária de caracteres seguindo o padrão ASCII
Como vimos, os números e os caracteres de um texto são facilmente representados em formato binário. Contudo, os computadores também são capazes de manipular imagens, áudio e vídeo. Para esses tipos de dados, a transformação para formato binário é bem mais complicada. Pesquise por PNG, MP3 e AVI que são formatos binários de imagens, áudios e vídeos através dos seguinte endere- ços:
Unidades
4 www.k19.com.br
5 INTRODUÇÃO
É importante ser capaz de mensurar a quantidade de dados que um computador pode armazenar ou transmitir. Essa mensuração pode ser realizada com ajuda das unidades de medida. A unidade de medida básica é o Bit. Cada 0 ou 1 que um computador armazena ou transmite é um Bit. Além dessa unidade básica, existem várias outras. Veja a seguir, algumas delas.
Arquiteturas de Processadores
Os comandos que os processadores dos computadores executam são definidos em formato bi- nário. Considere o exemplo fictício a seguir com algumas instruções para um determinado proces- sador.
www.facebook.com/k19treinamentos 5
7 INTRODUÇÃO
O que é um Programa?
Os comandos que os processadores dos computadores oferecem são extremamente básicos. Nor- malmente, são comandos para realizar operações aritméticas como soma, subtração, divisão e mul- tiplicação. Qualquer tarefa mais complexa deve ser resolvida através de uma sequência desses co- mandos básicos.
Por exemplo, para calcular a média aritmética dos números 10, 15 e 20, devemos obter o valor da somatória desses números através de operações básicas de soma. Depois, podemos utilizar uma operação básica de divisão para dividir o valor dessa somatória por 3 e assim obter o valor 15 que é a média dos números.
Uma sequência de comandos básicos de processador que resolve uma determinada tarefa re- cebe o nome de programa. Os programas são armazenados em arquivos comumente chamados de executáveis.
Na prática, os programas são formados por instruções que dependem da arquitetura do proces- sador e do sistema operacional. Consequentemente, um mesmo programa pode não funcionar em sistemas operacionais diferentes ou em processadores de arquiteturas diferentes.
Linguagem de Máquina
Como vimos anteriormente, o formato dos comandos que um computador pode executar de- pende basicamente da arquitetura do seu processador. Como existem diversas arquiteturas diferen- tes, um mesmo comando pode funcionar em um computador e não funcionar em outro. O formato dos comandos que funcionam em um determinado processador define a linguagem de máquina ou código de máquina desse processador.
Comandos definidos em linguagem de máquina são perfeitos para os computadores processa- rem. Por outro lado, eles são extremamente complexos para as pessoas entenderem. Podemos ve- rificar essa complexidade, observando o trecho de comandos em linguagem de máquina da figura abaixo:
000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000010000000000100000000 000000000000111000011111101110100000111000000000101101000000100 111001101001000011011100000000001010011001100110100100001010101 000110100001101001011100110010000001110000011100100110111101100 111011100100110000101101101001000000110001101100001011011100110 111001101111011101000010000001100010011001010010000001110010011 Figura 1.10: Trecho do programa Chrome em binário
Linguagem de Programação
Devido a complexidade, escrever um programa em linguagem de máquina é inviável. Para tor- nar viável o desenvolvimento de programas, existem as linguagens de programação que tentam se aproximar das linguagens humanas. Confira um trecho de código escrito com a linguagem de pro-
www.facebook.com/k19treinamentos 7
INTRODUÇÃO 8 gramação Java:
1 while ( lineMeasurer. getPosition () < paragraphEnd ) { 2 TextLayout layout = lineMeasurer. nextLayout ( formatWidth ); 3 drawPosY += layout. getAscent () ; 4 float drawPosX ; 5 6 if ( layout. isLeftToRight () ) { 7 drawPosX = 0; 8 } else { 9 drawPosX = formatWidth - layout. getAdvance () ; 10 } 11 }
Código Java 1.1: Exemplo de código em Java
Por enquanto, você não precisa se preocupar em entender o que está escrito no código acima. Apenas, observe que um programa escrito em linguagem de programação é bem mais fácil de ser lido do que um programa escrito em linguagem de máquina.
diferenciam as letras maiúsculas das minúsculas. Portanto, ao escrever o código de um programa, devemos tomar cuidado para não trocar uma letra maiúscula por uma letra minús- cula ou vice-versa.
Compilador
Vimos que os computadores são capazes de processar o código escrito em linguagem de má- quina. Também vimos que é inviável desenvolver um programa em linguagem de máquina. Por isso, existem as linguagens de programação. Daí surge uma pergunta: se os computadores entendem ape- nas comandos em linguagem de máquina, como eles podem executar código escrito em linguagem de programação?
Na verdade, os computadores não executam código escrito em linguagem de programação. Esse código que é denominado código fonte deve ser traduzido para código em linguagem de máquina. Essa tradução é realizada por programas especiais chamados compiladores.
while(true){if(x < 1){ }return 0; }return 1;
while(true){if(x < 1){ }return 0; }return 1;
CÓDIGO FONTE PROCESSADOR NÃO EXECUTA
CÓDIGO FONTE COMPILADOR CÓDIGO DE MÁQUINA PROCESSADOR EXECUTA Figura 1.11: Processo de compilação e execução de um programa
8 www.k19.com.br