Вы находитесь на странице: 1из 14

Introduo Lgica de Programao

Conceitos Fundamentais

Linguagens de mquina, simblica e de alto nvel


Os programadores escrevem instrues em vrias linguagens de programao; algumas claramente compreensveis por meio do computador e outras que exigem passos de traduo intermedirios. As linguagens de computador podem ser divididas em trs tipos gerais: Linguagens de mquina Linguagens simblicas Linguagens de alto nvel Um computador pode entender com clareza somente sua prpria linguagem de mquina. A linguagem de mquina a linguagem natural de um computador em particular, e definida pelo projeto de hardware daquela mquina

Linguagem de mquina
A linguagem de mquina normalmente chamada de cdigo objeto. As linguagens de mquina consistem geralmente em sequncias de nmeros (em ltima instncia, reduzidos a ls e 0s) que instruem os computadores a executar suas operaes mais elementares, uma de cada vez. As linguagens de mquina so dependentes da mquina, isto , uma linguagem de mquina em particular s pode ser usada em um tipo de computador. our Subtopic Goes Here

Linguagem de mquina
As linguagens de mquina so incmodas para as pessoas, como pode ser visto na seguinte seo de um dos primeiros programas de linguagem de mquina que soma horas extras ao salrio bsico a pagar e armazena o resultado em pagamento bruto: +1300042774 +1400593419 +1200274027 Em vez de usar as sequncias de nmeros que os computadores podiam entender com clareza, os programadores comearam a usar abreviaes semelhantes s das palavras inglesas para representar as operaes elementares do computador. Essas abreviaes formaram a base das linguagens simblicas (ou assembly).
4

Assembler
Programas tradutores, chamados de assemblers (montadores), foram desenvolvidos para converter os programas, velocidade do computador, em linguagem simblica na linguagem de mquina. A seo de um programa em linguagem simblica mostrada a seguir tambm soma horas extras ao salrio bsico a pagar e armazena o resultado em pagamento bruto: load salario add horaExtra store valorTotal Embora tal cdigo seja mais claro para as pessoas, ele ser incompreensvel para os computadores at que seja traduzido para a linguagem de mquina.
5

Linguagem de alto nvel


O uso de computadores aumentou rapidamente com o advento das linguagens simblicas, mas ainda eram exigidas muitas instrues para realizar at as tarefas mais simples. Para acelerar o processo de programao, foram desenvolvidas as linguagens de alto nvel, por meio das quais uma nica instruo realizaria tarefas significativas. Programas tradutores, chamados compiladores, convertem os programas em linguagem de alto nvel na linguagem de mquina. As linguagens de alto nvel permitem que os programadores escrevam instrues que se parecem muito com o ingls comum e contm notaes matemticas comumente usadas.
6

Linguagem de alto nvel


Um programa de folha de pagamento escrito em uma linguagem de alto nvel pode conter um comando como: valorTotal = salario + horaExtra; C, C++, as linguagens .NET da Microsoft (como o Visual Basic, o Visual C++ e o Visual C#) e Java esto entre as mais poderosas e amplamente utilizadas linguagens de programao de alto nvel. Foram desenvolvidos programas interpretadores que podem executar diretamente programas em linguagem de alto nvel (sem o atraso da compilao), embora mais lentamente do que ocorre com os programas compilados.

A HISTRIA DA LINGUAGEM C

A histria de C
C evoluiu de duas linguagens de programao anteriores, BCPL e B. A BCPL foi desenvolvida em 1967 por Martin Richards como uma linguagem para escrever software de sistemas operacionais e compiladores. Ken Thompson modelou muitas das caractersticas de sua linguagem B inspirado por suas correspondentes em BCPL, e utilizou B para criar as primeiras verses do sistema operacional UNIX no Bell Laboratories, em 1970. Tanto a BCPL como a B eram linguagens sem tipo, ou seja, sem definio de tipos de dados todo item de dados ocupava uma palavra na memria, e o trabalho de tratar um item de dados como um nmero inteiro ou um nmero real, por exemplo, era de responsabilidade do programador.

A histria de C
A linguagem C foi deduzida de B por Dennis Ritchie no Bell Laboratories, e originalmente implementada em um computador DEC PDP-11 em 1972. Inicialmente, C tornou-se conhecida como a linguagem de desenvolvimento do sistema operacional UNIX.

Hoje, quase todos os sistemas operacionais so escritos em C e/ou C++. C est disponvel para a maioria dos computadores.
C independente de hardware. Com um projeto cuidadoso, possvel escrever programas em C que sejam portveis para a maioria dos computadores.

10

A histria de C
No final dos anos 1970, C evoluiu para o que agora chamado de C tradicional. A publicao do livro de Kernighan e Ritchie, The C Programming Language, pela Prentice Hall, em 1978, chamou muita ateno para a linguagem A rpida expanso de C por vrios tipos de computadores (s vezes chamados de plataformas de hardware) levou a muitas variaes da linguagem que, embora semelhantes, eram frequentemente incompatveis. Em 1989, o padro foi aprovado; esse padro foi atualizado em 1999.

C99 um padro revisado para a linguagem de programao C, que aperfeioa e expande as capacidades da linguagem. Nem todos os compiladores C populares admitem C99.
Daqueles que admitem, a maioria implementa apenas um subconjunto dos novos recursos.
11

Ambiente de desenvolvimento de programa em C

12

Ambiente
Normalmente, os programas em C percorrem seis passos at que possam ser executados (Figura 1.1). So os seguintes: editar, pr-processar, compilar, ligar, carregar e executar.

Deitel & Deitel (2010)

13

Referncias
Deitel e Deitel. C: como programar. 6 ed. Pearson, 2011.
Mizrahi, Victorine. Treinamento em Linguagem C. So Paulo: Pearson Prentice Hall, 2008 Schildt, Herbert. C Completo e Total. Makron books Material de apoio da Prof Bogorny- UFRGS

14