LPC: mudanças entre as edições

De IFSC
Ir para navegação Ir para pesquisar
imported>Fargoud
Sem resumo de edição
imported>Fargoud
Sem resumo de edição
Linha 1: Linha 1:
=INTRODUÇÃO=
= Horário 3o. Módulo Técnico de Eletroeletrônica =
Uma das linguagens mais utilizadas por técnicos e pesquisadores é a linguagem C.


Isto ocorre principalmente pela versatilidade e pela complexidade da linguagem, que permitem a criação de programas muito sofisticados.
{| border="1" cellpadding="2" cellspacing="0"
! style="background: #32CD32; color:white" | Horário
! style="background: #32CD32; color:white" | Segunda
! style="background: #32CD32; color:white" | Terça
! style="background: #32CD32; color:white" | Quarta
! style="background: #32CD32; color:white" | Quinta
! style="background: #32CD32; color:white" | Sexta
|-
!style="text-align: center;" | 08:00 - 08:55
!style="color: #2F8F8F;" | 
!style="color: #2F8F8F;"| 
!| Introdução à Linguagem C
!style="color: #2F8F8F;"| 
!| Introdução à Linguagem C
|-
!style="text-align: center;" | 08:55 - 09:50
!style="color: #2F8F8F;" | 
!style="color: #2F8F8F;"| 
!| Introdução à Linguagem C
!style="color: #2F8F8F;"| 
!| Introdução à Linguagem C
|-
!style="color: #2F8F8F;" | -
!style="color:green;" | I n t e r v a l o
!style="color:green;" | I n t e r v a l o
!style="color:green;" | I n t e r v a l o
!style="color:green;" | I n t e r v a l o
!style="color:green;" | I n t e r v a l o
|-
!style="text-align: center;" | 10:10 - 11:05
!style="color: #2F8F8F;" | 
!style="color: #2F8F8F;"| 
!| Introdução à Linguagem C
!style="color: #2F8F8F;"| 
!| Introdução à Linguagem C
|-
!style="text-align: center;" | 11:05 - 12:00
!style="color: #2F8F8F;" | 
!style="color: #2F8F8F;"| 
!| Introdução à Linguagem C
!style="color: #2F8F8F;"| 
!| Introdução à Linguagem C
|-


==HISTÓRICO==
|}
<br>


A primeira versão da linguagem foi desenvolvida por dois pesquisadores da Bell Laboratories, [https://en.wikipedia.org/wiki/Brian_Kernighan ''Brian Kernighan'' ] e [https://pt.wikipedia.org/wiki/Dennis_Ritchie ''Dennis Ritchie''].


A empresa necessitava de uma linguagem especificamente para escrever o sistema operacional UNIX, mas C revelou-se tão eficiente e "transportável" para outros sistemas operacionais, sistemas e hardwares que seu uso alastrou-se rapidamente.


Esta primeira versão, chamada "K&R" sofreu algumas modificações com o tempo, para adaptar-se a computadores com mais de 8 bits e assim nasceu a versão "ANSI C", considerada um padrão da linguagem.
<!--<blockquote style="background: #32CD32; border: 1px solid black; padding: 1em; color:blue">
=Plano de Ensino=


Algum tempo depois, com a moda de programação orientada a objetos, nasceu a versão C++ que não mais segue a programação linear. Várias empresas criaram seus próprios compiladores C e assim apareceram o MS C (Microsoft), o Turbo C, Borland C, etc.
[http://wiki.sj.ifsc.edu.br/wiki/index.php/PRG1-EngTel_(Plano_de_Ensino) Plano de Ensino da Disciplina]


==CARACTERÍSTICAS DA LINGUAGEM==
</blockquote> -->


“C é uma linguagem compilada, estruturada e de baixo nível.”


Linguagem compilada porque, após ser escrita num editor de textos qualquer (que siga o padrão ASCII), precisa ser decodificada, compilada (cada módulo separadamente) e linkada para obter-se um programa executável.


Certos softwares como o Turbo C e o Borland C permitem que se edite, compile e linke os programas em C dentro de um mesmo ambiente (chamado de “IDE”, ou “Integrated Development Environment”), o que facilita muito a manipulação.


=Aulas=


É uma linguagem estruturada porque segue o padrão de endentação, tal como em Pascal e Fortran por exemplo, com alinhamentos dos blocos lógicos cada vez mais à direita, quanto mais "interno" ao bloco for o comando, e com execução linear, sem utilização de goto's, break's, etc.
:AULA 1 - [[AULA 1 - Introdução à Linguagem C - FIC|  Dia 01/04/2016 - Introdução aos Microcontroladores - Arduíno]]
:AULA 2 - [[AULA 2 - Introdução à Linguagem C - FIC|  Dia 08/04/2016 - Arquitetura do Arduíno. Escrita nas portas digitais]]
:AULA 3 - [[AULA 3 - Introdução à Linguagem C - FIC |  Dia 15/04/2016 - Leitura das portas digitais ]]
:AULA 4 - [[AULA 4 - Introdução à Linguagem C - FIC |  Dia 22/04/2016 - Uso da Comunicação Serial]]
:AULA 5 - [[AULA 5 - Introdução à Linguagem C - FIC |  Dia 29/04/2016 - Leitura e escrita nas portas analógicas]]
:AULA 6 - [[AULA 6 - Introdução à Linguagem C - FIC |  Dia 29/04/2016 - Leitura e escrita nas portas analógicas]]
:AULA 7 - [[AULA 7 - Introdução à Linguagem C - FIC |  Dia  13/05/2016 - 2a. Parte: Introdução à programação C]]
:AULA 8 - [[AULA 8 - Introdução à Linguagem C - FIC |  Dia 20/05/2016 - Variáveis e Constantes]]
:AULA 9 - [[AULA 9 - Introdução à Linguagem C - FIC |  Dia 27/05/2016 - Operadores]]
:AULA 10 -[[AULA 10 - Introdução à Linguagem C - FIC |  Dia 03/06/2016 - Operadores]]
:AULA 11 -[[AULA 11 - Introdução à Linguagem C - FIC |  Dia 10/06/2016 - Instruções IF, IF-ELSE e WHILE]]
:AULA 12 - [[AULA 12 - Introdução à Linguagem C - FIC|  Dia 17/12/2016 - Instruções FOR, D0-WHILE e SWITCH]]
:AULA 13 - [[AULA 13 - Introdução à Linguagem C - FIC |  Dia 29/04/2016 - Leitura e escrita nas portas analógicas]]
:AULA 14 - [[AULA 14 - Introdução à Linguagem C - FIC |  Dia 01/07/2016 - Funções]]
:AULA 15 - [[AULA 15 - Introdução à Linguagem C - FIC |  Dia 08/07/2016 - Matrizes]]
:AULA 16 - [[AULA 16 - Introdução à Linguagem C - FIC |  Dia 15/07/2016 - Ponteiros]]
:AULA 17 - <span style="color:green;">  Dia 22/07/2016 -  Avaliação 1 - Trabalho Individual - Prática</span>
:AULA 18 -<span style="color:blue;">  Dia 29/07/2016 - <span style="color:blue;"> Avaliação 4 - Teórico/prática </span>
:AULA 19 - [[AULA 19 - Introdução à Linguagem C - FIC |  Dia 29/04/2016 - Leitura e escrita nas portas analógicas]]
:AULA 20 - [[AULA 20 - Introdução à Linguagem C - FIC |  Dia 29/04/2016 - Leitura e escrita nas portas analógicas]]
:AULA 21 - [[AULA 21 - Introdução à Linguagem C - FIC |  Dia 29/04/2016 - Leitura e escrita nas portas analógicas]]
:AULA 22 - [[AULA 22 - Introdução à Linguagem C - FIC |  Dia 29/04/2016 - Leitura e escrita nas portas analógicas]]
:AULA 23 - [[AULA 23 - Introdução à Linguagem C - FIC |  Dia 29/04/2016 - Leitura e escrita nas portas analógicas]]
:AULA 24 - [[AULA 24 - Introdução à Linguagem C - FIC |  Dia 29/04/2016 - Leitura e escrita nas portas analógicas]]
:AULA 25 -<span style="color:blue;">  Dia 29/07/2016 - <span style="color:blue;"> Avaliação 4 - Teórico/prática </span>


=Material de apoio=


Finalmente é uma linguagem de baixo nível por permitir acesso às camadas lógicas mais baixas da máquina. Isto é, por aproximar-se bastante da linguagem de máquina, Assembler, que apesar de bastante rudimentar tem a capacidade de acessar diretamente a memória, o hardware do computador, como registradores, portas, posições da RAM, etc.


Com isto, ganha-se muito em rapidez de execução e em poder para utilizar completamente os recursos do computador.  
:[[media: cursoC.pdf|Apostila Profa. Fernanda sobre Linguagem C]]


É importante salientar que apesar de ser possível utilizar-se funções muito complexas de baixo nível em C, um programador não interessado nisto terá uma linguagem estruturada como qualquer outra de alto nível.
Aplicativo IDE Codeblocks para programação em Linguagem C: [http://www.codeblocks.org/ code::blocks]




Outra característica importante é que C é uma linguagem de “estilo livre”, sem formatação rigorosa como Fortran e Basic. Em Basic, cada linha contém um comando e cada comando ocupa somente uma linha (às vezes, há até numeração das linhas). Em Fortran, os arquivos de saída contém espaços reservados para cada string, valor de caractere ou espaço em branco que deverá ser impresso. Nada disto ocorre em C. Desde que a sintaxe correta seja seguida, não há maiores restrições na linguagem. Ou melhor, quase não há.
-->
 
 O programador não pode esquecer que o compilador C diferencia caracteres minúsculos de maiúsculos. Por exemplo, as variáveis "numero" e "Numero" são consideradas diferentes uma da outra na linguagem C.
 
Um avanço significativo que C possibilitou, foi escrever-se um programa numa linguagem de alto nível (que C não deixa de ser) e ter, após a compilação, um código gerado diretamente em Assembler.
 
Qual a vantagem nisto? Quem trabalha com circuitos contendo microprocessadores ou microcontroladores sabe! Até pouco tempo seria necessário escrever  páginas de código em Assembler para funções simples.
 
Agora, com o uso de compiladores como o Keil - C ou Avocet, o programador escreve o código em C e o compilador encarrega-se de transformá-lo em Assembler.
Costuma-se dizer que o C é uma linguagem extremamente "portável". Ou seja, foi desenvolvido para UNIX, mas roda muito bem em DOS. Além disto, um programa escrito em C, para uma estação de trabalho provavelmente rodará num PC ou num computador médio; ou mesmo passará de um IBM-PC para um Machintosh. Isto ocorre porque C não é rígido, não tem funções pré-definidas de I/O (aliás, de nenhum tipo) para cada máquina e adapta-se a qualquer hardware. Funções específicas (como entrada e saída) para cada máquina devem ser escritas pelo próprio usuário e certamente estas não rodariam num hardware diferente. Uma opção para o programador mais prático (ou preguiçoso) é procurar nas dezenas de arquivos de biblioteca ".h" (por exemplo, "stdio.h") uma função que se encaixe nas suas necessidades. É importante salientar que também estas funções (como por exemplo, printf(), que imprime saídas formatadas na tela) foram desenvolvidas por usuários e não pertencem à linguagem original. Na verdade, quase tudo em C é definido pelo usuário, daí sua complexidade e ao mesmo tempo, seu poder.

Edição das 17h55min de 4 de julho de 2016

Horário 3o. Módulo Técnico de Eletroeletrônica

Horário Segunda Terça Quarta Quinta Sexta
08:00 - 08:55 Introdução à Linguagem C Introdução à Linguagem C
08:55 - 09:50 Introdução à Linguagem C Introdução à Linguagem C
- I n t e r v a l o I n t e r v a l o I n t e r v a l o I n t e r v a l o I n t e r v a l o
10:10 - 11:05 Introdução à Linguagem C Introdução à Linguagem C
11:05 - 12:00 Introdução à Linguagem C Introdução à Linguagem C





Aulas

AULA 1 - Dia 01/04/2016 - Introdução aos Microcontroladores - Arduíno
AULA 2 - Dia 08/04/2016 - Arquitetura do Arduíno. Escrita nas portas digitais
AULA 3 - Dia 15/04/2016 - Leitura das portas digitais
AULA 4 - Dia 22/04/2016 - Uso da Comunicação Serial
AULA 5 - Dia 29/04/2016 - Leitura e escrita nas portas analógicas
AULA 6 - Dia 29/04/2016 - Leitura e escrita nas portas analógicas
AULA 7 - Dia 13/05/2016 - 2a. Parte: Introdução à programação C
AULA 8 - Dia 20/05/2016 - Variáveis e Constantes
AULA 9 - Dia 27/05/2016 - Operadores
AULA 10 - Dia 03/06/2016 - Operadores
AULA 11 - Dia 10/06/2016 - Instruções IF, IF-ELSE e WHILE
AULA 12 - Dia 17/12/2016 - Instruções FOR, D0-WHILE e SWITCH
AULA 13 - Dia 29/04/2016 - Leitura e escrita nas portas analógicas
AULA 14 - Dia 01/07/2016 - Funções
AULA 15 - Dia 08/07/2016 - Matrizes
AULA 16 - Dia 15/07/2016 - Ponteiros
AULA 17 - Dia 22/07/2016 - Avaliação 1 - Trabalho Individual - Prática
AULA 18 - Dia 29/07/2016 - Avaliação 4 - Teórico/prática
AULA 19 - Dia 29/04/2016 - Leitura e escrita nas portas analógicas
AULA 20 - Dia 29/04/2016 - Leitura e escrita nas portas analógicas
AULA 21 - Dia 29/04/2016 - Leitura e escrita nas portas analógicas
AULA 22 - Dia 29/04/2016 - Leitura e escrita nas portas analógicas
AULA 23 - Dia 29/04/2016 - Leitura e escrita nas portas analógicas
AULA 24 - Dia 29/04/2016 - Leitura e escrita nas portas analógicas
AULA 25 - Dia 29/07/2016 - Avaliação 4 - Teórico/prática

Material de apoio

Apostila Profa. Fernanda sobre Linguagem C

Aplicativo IDE Codeblocks para programação em Linguagem C: code::blocks


-->