segunda-feira, 5 de novembro de 2012

Tutorial C - Parte 01 - Historia e características da linguagem de programação C

O desenvolvimento inicial de C ocorreu no AT&T Bell Labs entre 1969 e 1973. Não se sabe se o nome "C" foi dado à linguagem porque muitas de suas características derivaram da linguagem B e C é a letra conseguinte no alfabeto, ou porque "C" é a segunda letra do nome da linguagem BCPL, da qual derivou-se a linguagem B.

C foi originalmente desenvolvido para a implementação do sistema Unix (originalmente escrito em PDP-7 Assembly, por Dennis Ritchie e Ken Thompson). Em 1973, com a adição do tipo struct, C tornou-se poderoso o bastante para a maioria das partes do núcleo do Unix, serem reescritas em C. Este foi um dos primeiros sistemas que foram implementados em uma linguagem que não o Assembly, sendo exemplos anteriores os sistemas: Multics (escrito em PL/I) e TRIPOS (escrito em BCPL). Segundo Ritchie, o período mais criativo ocorreu em 1972.

FIGURA 1 – Ken Thompson e Dennis Ritchie (da esquerda para direita), os criadores das linguagens B e C, respectivamente.
C é uma das linguagens de programação mais populares e existem poucas arquiteturas para as quais não existem compiladores para C. C tem influenciado muitas outras linguagens de programação. mais notavelmente C++, que originalmente começou como uma extensão para C.

Visão geral

C é uma linguagem imperativa e procedural, para implementação de sistemas. Seus pontos de design foram para ele ser compilado, fornecendo acesso de baixo nível à memória e baixos requerimentos do hardware. Também foi desenvolvido para ser uma linguagem de alto nível, para maior reaproveitamento do código. C foi útil para muitas aplicações que foram codificadas originalmente em Assembly.

Essa propriedade não foi acidental; a linguagem C foi criada com o objetivo principal em mente: facilitar a criação de programas extensos com menos erros, recorrendo ao paradigma da programação procedural, mas sobrecarregando menos o autor do compilador, cujo trabalho complica-se ao ter de realizar as características complexas da linguagem. Para este fim, a linguagem C possui as seguintes características:

§        Uma linguagem extremamente simples, com funcionalidades não-essenciais, tais como funções matemáticas ou manuseamento de ficheiros (arquivos), fornecida por um conjunto de bibliotecas de rotinas padronizada

§        A focalização no paradigma de programação procedural

§        Um sistema de tipos simples que evita várias operações que não fazem sentido

§        Uso de uma linguagem de pré-processamento, o pré-processador de C, para tarefas tais como a definição de macros e a inclusão de múltiplos ficheiros de código fonte

§         Ponteiros dão maior flexibilidade à linguagem

§        Acesso de baixo-nível, através de inclusões de código Assembly no meio do programa C

§         Parâmetros que são sempre passados por valor para as funções e nunca por referência (É possível simular a passagem por referência com o uso de ponteiros)

§        Definição do alcance lexical de variáveis

§   Estruturas de variáveis, (structs), que permitem que dados relacionados sejam combinados e manipulados como um todo


Algumas características úteis, que faltam em C, podem ser encontradas em outras linguagens, que incluem:

§  Segurança de tipo
§  Coletor de lixo (mais comum em linguagens interpretadas)
§  Vetores que crescem automaticamente
§  Classes ou objetos com comportamento (ver Orientação a objetos)
§  Closures
§  Funções aninhadas
§  Sobrecarga de operadores
§  Meta-programação
§  Apoio nativo de multithreading e comunicação por rede

Apesar da lista de características úteis que C possui não ser longa, isso não tem sido um impedimento à sua aceitação, pois isso permite que novos compiladores de C sejam escritos rapidamente para novas plataformas, e também permite que o programador permaneça sempre em controle do que o programa está a fazer. Isto é o que por várias vezes permite o código de C correr de uma forma mais eficiente que muitas outras linguagens. Tipicamente, só código de Assembly "afinado à mão" é que corre mais rapidamente, pois possui um controle completo da máquina, mas avanços na área de compiladores juntamente com uma nova complexidade nos processadores modernos permitiram que a diferença tenha sido rapidamente eliminada. Uma consequência da aceitação geral da linguagem C é que frequentemente os compiladores, bibliotecas e até intérpretes de outras linguagens de nível maior sejam eles próprios implementados em C.

C tem como ponto forte, a sua eficiência, e é a linguagem de programação preferida para o desenvolvimento de sistemas e softwares de base, apesar de também ser usada para desenvolver programas de computador. É também muito usada no ensino de ciência da computação, mesmo não tendo sido projetada para estudantes e apresentando algumas dificuldades no seu uso. Outra característica importante de C, é sua proximidade do código de máquina, que permite que um projetista seja capaz de fazer algumas previsões de como o software irá se comportar, ao ser executado.

C tem como ponto fraco, a falta de proteção que dá ao programador. Praticamente tudo que se expressa em um programa em C, pode ser executado, como por exemplo, pedir o vigésimo membro de um vetor com apenas dez membros. Os resultados são muitas vezes totalmente inesperados, e os erros, difíceis de encontrar.


Linha do tempo da linguagem C:
  • 1972 – Criação do C;
  • 1978 – Livro “The C Programming Language” é publicado, sendo a primeira especificação da linguagem;
  • 1989 – Padronização do C89  (conhecido como C ANSI ou Padrão C);
  • 1990 – C ANSI adotado pela ISO, conhecido como C90;
  • 1999 – Estabelecido padrão C99 (porém não implementado em muitos compiladores);
  • 2007 – Trabalho no novo padrão C, padrão C1X anunciado.
Onde é usada a linguagem C?

A linguagem C por ser muito versátil e possuir compiladores em diversas plataformas tem seu uso em:
  • Sistemas operacionais, como o Linux;
  • Microcontroladores de automóveis, aviões, leitores de cartão de crédito, entre outros.
  • Processadores DSP de audio digital, sistemas de TV entre outros.

IDE

IDEs (Integrated Development Environment ou Ambiente Integrado de Desenvolvimento) são aplicativos muito úteis pois agregam em si editores, compiladores e depuradores, trazendo mais rapidez e organização ao desenvolvimento, principalmente em programas com tendência no aumento da quantidade de linhas de código. Para programar em linguagem C existe algumas IDEs disponíveis:
  • Dev-C++
  • Eclipse (CDT);
  • Microsoft Visual C++ (Express Edition);
  • KDevelop;
  • Xcode;
  • Anjuta.
FIGURA 2 – Interface do Dev-C++ versão 4.9.92.
Também é possível programar em linguagem C através de qualquer editor de texto e compilar de forma manual, como por exemplo usando GCC (GNU Compiler Collection). Com o GCC já instalado no seu sistema, é muito simples usá-lo para compilar programas em C, se o programa consistir de um único arquivo, você pode executar este comando no terminal:

$ gcc programa.c -o programa

Leia Mais >>

sexta-feira, 2 de novembro de 2012

Ebook - Aprendendo a programar, Programando em linguagem C




Este livro tem por objetivo ensinar técnicas de programação de computadores através da Linguagem C, a qual vem se tornando cada dia mais popular devido à sua versatilidade e seu poder.

O enfoque do livro é acadêmico, de recomendável adoção por professores de universidades, ensino médio profissionalizante e cursos livres de Informática.

Tipo: Ebook
Autor: Jaime Evaristo
Idioma: Português
Formato: PDF
Tamanho: 759 kb
Servidores: Depositfiles/4Shared


Depositfiles

http://pt.scribd.com/doc/63443477/Linguagem-C

Leia Mais >>

14 dicas antes de comprar uma impressora!

O comando de impressão é o mesmo em todos os sistemas operacionais, mas escolher qual é a melhor impressora para sua casa ou escritório envolve muitos critérios. Estive fazendo uma pesquisa pela net e encontrei quatorze dicas básicas que ajudara você tomar a melhor decisão na hora de comprar uma impressora.


1 - Quando é indicado comprar uma impressora a laser e quando é indicado comprar uma impressora a jato de tinta?

As impressoras a laser são mais indicadas para o ambiente corporativo, pois fornecem um melhor custo benefício na impressão por página e, além disso, suportam um número elevado de impressões por minuto. Os modelos mais recentes já vêm com Wi-Fi e trabalham facilmente em rede. As impressoras a laser coloridas já detém uma importante faixa do mercado, antes dominado pelas monocromáticas.


As impressoras a jato de tinta são indicadas para o uso residencial ou escritórios que tenham um pequeno volume de impressões diárias. Dá para gastar menos energia e materiais escolhendo uma impressora multifuncional em vez de montar um time com impressora, scanner e copiadora independentes para casa ou escritório.



2 - Tenho um pequeno escritório, qual impressora é mais indicada?


A mais indicada é uma impressora multifuncional. Nela, você agregará três serviços: impressão, scanner e copiadora, fora que poupará energia e espaço. Você pode configurá-la para imprimir em preto e branco, poupando a vida dos cartuchos coloridos.


3 - Cartucho "genérico" prejudica a impressora?


Todo mundo aponta o preço dos cartuchos de tinta originais como o grande vilão das impressoras. Mas isso não significa que os cartuchos alternativos, mais baratos e com mais tinta, sejam os mocinhos. Eles não prejudicam a impressora, mas muitas vezes o rendimento é bem inferior e o custo por página fica bem próximo do obtido com o cartucho da empresa fabricante.


4 - Velocidade de impressão: como funciona?


A velocidade de impressão é medida em PPM (páginas por minuto). Quando você ver informações que uma impressora faz 36 ppm no preto e 19 ppm no colorido saberá se ela será rápida ou não. As impressoras mais velozes são aquelas que utilizam dois cartuchos ao mesmo tempo, por isso obtém bons índices de ppm.


5 - Como entender a resolução de uma impressa?


Ela é medida em dpi (Dots per Inch) e estabelecida em pontos por polegada. Quanto maior o índice de dpi, melhor a qualidade de imagem. No caso de uma impressora que diz ter resolução de 6000x1200 dpi significa que ela consegue pintar 6000 pontos na horizontal e 1200 na vertical em um espaço de 1 polegada quadrada.


6 - O que é ciclo de serviço de uma impressora?


É uma informação vital, que revela o volume máximo suportado de impressões mensais do equipamento. Com esse dado você pode mensurar se a impressora que deseja tem grande porte ou pequeno porte. Quanto maior o ciclo dela, mais impressões por dia.


7 - Qual é a impressora mais indicada para impressão de fotos?


As impressoras a jato de tinta levam vantagem nesse tipo de impressão. Até nos modelos mais baratos é possível imprimir fotos com qualidade. Para essa combinação funcionar também será necessário tirar fotos com alta resolução, pois uma imagem ruim na tela do seu computador vai ficar com má qualidade (pixelada) na impressão. Quanto maior o valor de dpi, melhor a qualidade da impressão.
Para os usuários mais exigentes, vale a pena conferir as impressoras que, através do visor LCD, permitem fazer um preview das fotos antes de imprimir e até uns ajustes básicos.


8 - Como funciona a conectividade nas impressoras?


A maioria das impressoras vem com cabo de conexão USB e há modelos com Wi-Fi embutido. Para quem gosta de fotografar, foras as tradicionais entradas para cartões CF, MS, SD e xD, um recurso a mais é o PictBridge, essa porta permite que a impressora receba fotos diretamente de uma câmera que também tenha esse tipo de conexão.


9 - Como saber se a capacidade da bandeja de papel atenderá à minha necessidade?


Tudo depende do volume diário e do tipo de impressão que você precisa. Caso queira imprimir envelopes ou papéis com gramatura superior ao A4, a bandeja ficará comprometida. Por isso, é sempre importante verificar qual a capacidade das bandejas da impressora, tanto aquela que armazena o papel antes da impressão, quanto a que devolve o arquivo impresso. As opções com pouca capacidade necessitam ser abastecidas mais vezes.


10 - Terei problemas de instalação de drivers em distribuições Linux?


A impossibilidade de instalar os drives de alguns modelos em distribuições Linux já deu dor de cabeça para muita gente, atualmente os fabricantes estão mais ligados em atender todos os Sistemas Operacionais. Para não correr risco, quando escolher o modelo que suprirá suas necessidades visite o site LinuxPrinting.org e confira a compatibilidade da impressora com as distribuições Linux, leia as observações dos usuários e tome sua decisão.


11 - Como calcular o custo por página de cada modelo?


Para fazer essa conta, divida o preço do cartucho pela quantidade de páginas que ele oferece (informação passada pelo fabricante). Esse cálculo é bem importante, pois você também terá noção do custo do cartucho do modelo escolhido e prepara o bolso para a reposição.


12 - Quais tipo de papel posso utilizar?


O papel A4 é aceito em todas as impressoras. Caso queira utilizar outros formatos e gramaturas, verifique se o modelo desejado suporta. Qualquer papel não compatível poderá danificar o produto.


13 - Uma impressora multifuncional ou a jato de tinta com Wi-Fi é bem mais cara do que uma convencional?


Não, em alguns casos a diferença não ultrapassa R$100,00. É um ótimo custo-benefício para quem quer economizar nos fios e na energia, pois a impressora pode ser compartilhada por diversas máquinas da rede sem a necessidade de que uma fique sempre ligada.


14 - Conhece o Inksaver?


Antes de comprar o seu gadget, você pode instalar na sua máquina um programinha chamado Inksaver. Ele reduz o consumo de impressoras a jato de tinta, prolongando o tempo de uso de cada cartucho, além de fornecer total controle do quanto de tinta é usado pela impressora.

Leia Mais >>

Conheça os principais tipos de impressoras disponíveis no mercado atualmente!


Uma impressora ou dispositivo de impressão é um periférico que, quando conectado a um computador ou a uma rede de computadores, tem a função de dispositivo de saída, imprimindo textos, gráficos ou qualquer outro resultado de uma aplicação.

Herdando a tecnologia das máquinas-de-escrever, as impressoras sofreram drásticas mutações ao longo dos tempos.Também com o evoluir da computação gráfica, as impressoras foram-se especializando a cada uma das vertentes. Assim, encontram-se impressoras otimizadas para desenho vetorial e para raster, e outras otimizadas para texto. A tecnologia de impressão foi incluída em vários sistemas de comunicação, como o fax.

Características

As impressoras são tipicamente classificadas quanto à escala cromática (em cores ou em preto-e-branco), páginas por minuto (medida de velocidade) e tipo.

Bidirect print

Bidirect print consiste na impressão bidirecional. Quando o cabeçote da impressora vai para a direita ele imprime e quando retorna para esquerda também é feita a impressão. Este expediente tecnológico torna as impressoras mais rápidas.

Tipos de impressoras

1. Impressora de impacto – matricial

Existem dois tipos de impressora matricial, as chamadas “matriz de pontos” e as “margaridas”. A diferença entre elas é que a segunda possui um mecanismo de impressão semelhante ao da máquina de escrever, no qual uma fita é pressionada no papel a fim de imprimir a letra, daí o nome “de impacto”, enquanto a primeira utiliza um mecanismo de agulhas para formar a letra e imprimi-la.

Este tipo de impressora é bastante utilizado para a impressão de folhas de pagamento, e também por lojas e transportadoras, para emissão de notas fiscais. 

2. Impressora de jato de tinta e jato de cera

Nestes tipos de impressoras, a impressão é feita por meio de centenas de gotas muito pequenas de tintas, as quais são liberadas a partir de uma minúscula abertura existente nos cartuchos de tintas. O esquema de cores empregado por estes equipamentos é o CMYK, sigla que identifica as cores Ciano, Magenta, amarelo (Yellow) e preto (Black).


Estas impressoras são muito comuns em ambientes domésticos e também escritórios, uma vez que oferecem uma impressão de boa qualidade e também fidelidade às cores, além de serem mais baratas que as demais. Epson, HP e Lexmark são as principais marcas quando se fala de impressoras jato de tinta.

3. Impressora a laser

Mais comum em ambientes corporativos, as impressoras a laser oferecem impressões de excelente qualidade e em velocidade bem superior às “jato de tinta”. Elas utilizam um toner no lugar do cartucho de tinta, o qual contém um pó extremamente fino que, quando aquecido, gruda no papel e permite que a imagem, ou texto, seja “fixado” na folha.

Existem dois tipos de impressoras a laser, as coloridas e monocromáticas. A primeira delas, obviamente, permite a impressão de imagens e textos coloridos.

 Já a versão monocromática só permite a impressão de imagens e textos na cor preta ou em tons de cinza, além de ser um pouco mais barata que a colorida, Assim como na "jato de tinta", a Epson, HP e Lexmark são as principais marcas para impressoras a laser.

4. Impressora térmica

Este tipo de impressora requer um tipo de papel especial também, chamado papel térmico. O seu funcionamento é simples: quando a cabeça térmica passa sobre o papel, este fica escuro nas regiões onde é aquecido, produzindo assim a imagem, ou texto.

Este tipo de impressora caiu em desuso e o fax tradicional, daqueles que operam com rolo de “papel para fax”, e as impressoras de cupom fiscal de supermercados são o que restou de lembrança das impressoras térmicas.  Elas eram utilizadas para fazer banners e faixas, quando o plotter não era tão acessível.



5. Plotter

Existem dois tipos de plotter, os de corte e os de impressão. O plotter de corte apenas recorta os desenhos em papéis especiais, muito úteis para criar adesivos, por exemplo. Os plotters de impressão, por sua vez, trabalham com impressões em grande escala e alta qualidade. Elas são as responsáveis pelos banners e faixas que vemos pela rua. Obviamente, este tipo de máquina é destinado a empresas de plotagem.

Os plotters do tipo impressão normalmente fazem uso da tecnologia jato de tinta para a criação dos banners e faixas. Claro que tudo adaptado para a dimensão da máquina.  Algumas marcas podem custar bem mais caro como a HP DesignJet 510 CH337A.



6. Impressoras de cera térmica

Este tipo de impressora utiliza cilindros de cera, no esquema de cores CMYK. Uma cabeça contendo diversos pinos derrete a cera e também é responsável pela fixação deste material no papel. Apesar de não ser muito conhecida dos usuários, esta impressora ainda é bastante utilizada, principalmente para a impressão de transparências e slides profissionais.

7. Impressoras dye-sublimation

O funcionamento das impressoras dye-sublimation é similar ao das impressoras de cera térmica, com a diferença que ao invés de cera elas utilizam o filme dye plástico difusivo. A cabeça de impressão esquenta o filme e vaporiza a imagem no papel.

Quem é da área de design ou necessita de precisão e detalhes na impressão já deve ter ouvido falar nesta impressora. Além disso, muitos centros médicos utilizam este tipo de tecnologia para a impressão de imagens de ecografia e outros exames.

8. Impressoras de tinta sólida

Este tipo de impressora utiliza um bloco sólido de tintas, as quais passam por um processo de mudança de fase no momento da impressão. Neste processo, o bloco de tintas é derretido para ser aplicado no papel e, em seguida, um fusor se encarrega de fazer a fixação do material ao papel. Um processo bem similar ao das impressoras de cera térmica.

As impressoras de tinta sólida são mais comuns em ambientes industriais, principalmente nos setores de design e embalagens. É uma excelente opção para provas de tintas. 

9. Impressora de sublimação

Como o próprio nome sugere, esta impressora trabalha com a sublimação do material que substitui o cartucho de tinta. Este material é um filme no jogo de cores CMYK que, quando aquecido, se transforma em gás e é aderido pelo papel, no qual é então fixo.

Em geral estas impressoras utilizam papéis especiais, mas há modelos que trabalham com folhas comuns também. Obviamente, o papel utilizado influencia diretamente no resultado da impressão.

Aplicações de artes gráficas em geral fazem uso deste tipo de impressora, já que além de imprimir no papel, a tinta em gás também adere em alumínio, aço inox e até tecidos de poliéster. Seu custo, no entanto, é bastante elevado.

10. Impressora de cartão PVC

As impressoras de cartões de identificação são ideais para empresas que necessitem imprimir cartões de identificação para segurança, cartões de fidelidade, cartões de membros de faculdades, escolas, clubes e associações, entre outros. Apresentam-se como uma ótima solução para bureaus de prestação de serviços, mercados educacionais (escolas, universidades), entidades recreativas (parques, clubes), supermercados, grandes magazines, hospitais, órgãos governamentais, programas de fidelidade, convênios, e empresas de todos os portes.

Leia Mais >>

Tutorial HTML - Multimédia: Som e Imagem - Parte 05

Podemos começar por ver como se insere um fundo numa página:

<HTML>
<HEAD><TITLE>Página com imagem</TITLE></HEAD>

<BODY BACKGROUND="imagem.jpg">
<FONT FACE="Arial" SIZE="4">Imagem de fundo</FONT>
</BODY>
</HTML>

Teremos como fundo da página a imagem especificada no parâmetro BACKGROUND, presente na mesma pasta que a nossa página.



Embora não se veja na imagem acima, a imagem repete-se em default (padrão). Não é aconselhável a utilização de fundos complexos, visto que podem tornar o texto pouco legível. Também é recomendável a escolha de uma cor suficientemente contrastante para o texto.

No entanto, para colocarmos uma imagem no corpo da nossa página utilizamos o ‘tag’ <IMG>. Este ‘tag’ insere uma imagem no ponto onde é colocado, e não é fechado, visto que não se trata de um ‘tag’ de formatação.

<BODY BGCOLOR="#66CCFF">
<P>Olá, sou o Carlos Eduardo</P>
<P><IMG SRC="eduardo.jpg"></P>
</BODY>

Tem o resultado seguinte:



As imagens são objetos inseridos no meio do texto, pelo que a sua colocação requer algum planejamento:

<DIV ALIGN="CENTER">
Olá, sou o Carlos Eduardo.<IMG SRC="eduardo.jpg" >
Bem vindos à minha página!
</DIV>

Tem um resultado um pouco infeliz:


Vamos então analizar o ‘tag’ <IMG>. O parâmetro SRC (SouRCe) indica o ficheiro da imagem. Deve ser um ficheiro .GIF ou .JPG, e devemos ter atenção às maiúsculas e minúsculas do seu nome.

Uma conclusão muito importante é que podemos inserir uma imagem numa secção formatada pelo ‘tag’ <A>, de modo a criar um link nessa imagem:

<P>Clique abaixo para continuar</P>
<P>
<A HREF="paginadois.htm"><IMG SRC="link.jpg" BORDER="4"></A>
</P>

Teremos então um link para ‘paginadois.htm’ na imagem ‘link.jpg’:


O parâmetro BORDER define a largura da borda da imagem. No caso de esta fazer uma hiper-ligação, a cor desta borda será a cor por default (padrão), aquela que pode ser definida por <BODY LINK="…">, senão será igual à cor do texto. Podemos ainda utilizar BORDER="0" para suprimir a borda.


Além de imagens, também existe a possibilidade de colocar um pequeno reprodutor de som na página. Embora muita gente ache a musica de fundo algo de gosto duvidoso, desta maneira será possível parar a música, através de um pequeno controle tipo aparelhagem.

<P ALIGN="CENTER">
<BGSOUND SRC="musica.mp3">
<EMBED SRC="musica.mp3" WIDTH="240" HEIGHT="60" AUTOSTART="TRUE" CONTROLS="SMALLCONSOLE" VOLUME="60"OOP="FALSE"></EMBED>
</P>

O aspecto será o seguinte:



Nota-se que foram utilizados dois ‘tags’ para fazer a mesma coisa. Porquê? Os dois browsers mais utilizados, o Internet Explorer da Microsoft e o chrome da Google têm certas diferenças na sua interpretação do HTML. Por isso, por vezes, é necessário incluir dois comandos diferentes para uma mesma função, visto que cada um destes comandos se destina a um dos browsers.

O ‘tag’ <BGSOUND> tem no parâmetro SRC a localização do ficheiro de som a tocar. No exemplo trata-se de um ficheiro .MP3, mas pode perfeitamente ser um som .WAV ou .MID.

De forma similar, o ‘tag’ <EMBED> tem em SRC o ficheiro a tocar. Mas este ‘tag’ é substancialmente diferente. <EMBED> é um ‘tag’ poderosíssimo que tem como função a inserção de ‘plug-ins’ multimédia, que além de som também podem ser programas em Java, filmes ou mesmo visores de mundos em realidade virtual. Os parâmetros de <EMBED> são específicos conforme o conteúdo e é um domínio já bastante avançado da criação de páginas.

Leia Mais >>

Ouvir a Rádio Boa Vista FM 96,5 de Paracatu Ao Vivo e Online

Ouvir a Rádio Boa Vista FM 96,5 de Paracatu Ao Vivo e Online
Cidade: Paracatu/MG - Gênero: Popular

Chuck Norris Aprova Tecnosolution!


NOTÍCIAS TI

Ajude a divulgar nosso blog!


Total de visualizações de página

Usuários Online

Usuários online

  ©TECNOSOLUTION - Todos os direitos reservados.

Template by Dicas Blogger | Topo