Noções Básicas do Software dos Computadores Digitais
Tema 1 | Conferência 2 | Computaçao I
MSC. Henry Raúl González Brito
Contenúo
• Definição de software.
• Categorias de software.
• Sistemas Operativos• Funções básicas de un SO
• Tipos de SO
• Conceito de Programa: Intruções.
• Linguagens de Programação. Tipos de Linguagens.
• Modularização.
Bibliografía
• ASCENCIO, A. F. G. e CAMPOS, E. A. V. - Fundamentos da Programação de
• Computadores: Algoritmos, Pascal e C/C++; São Paulo: Prentice Hall, 2002.
• GUIMARÃES, A. M. e LAGES, N. A. C. - Algoritmos e Estruturas de Dados;
• Rio de Janeiro: Livros Técnicos e Científicos, 1994.
• VELOSO, P.; Dos SANTOS, C e AZEREDO, P. - Estruturas de Dados; 3ª ed.;
• Rio de Janeiro: Editora Campus, 1985.
• MIZRAHI, V. V. – Treinamento em Linguagem C++; São Paulo: Pearson
• Prentice Hall. 2006.
Introdução
Definição de software
Software é um termo genérico para uma coleção organizadade dados informáticos e instruções. Ele é responsável porcontrolar, integrar e gerenciar os componentes de um sistemainformático de hardware e para a realização de tarefasespecíficas. Em outras palavras, o software instrui ocomputador o que fazer e como fazê-lo.
Por exemplo, o software instrui o hardware, sobre aquilo queserá exibido na tela do usuário, que tipo de entrada a sertomada a partir do usuário, e que tipo de saída a ser gerada.
CATEGORIAS DE SOFTWARE
O software pode ser dividido em três categorias principais:
1. Software de sistema: que proporciona as funções de gestão dos recursos físicos e lógicos do computador.
2. Software de aplicação: que é utilizado pelos utilizadores para realizar tarefas específicas.
3. Software de programação: utilizado para fazer programas.
Software de sistema
Seu objetivo é separar usuárioe programador de detalhes docomputador específico queestá sendo usado. O softwaredo sistema lhe dá ao usuáriointerfaces de alto nível eferramentas que permitem amanutenção do sistema.Inclui, entre outros: Sistemasoperacionais, Drivers...
Software aplicativo
É aquele que permite aos usuários executar uma ou maistarefas específicas, em qualquer campo de atividade quepode ser automatizado especialmente no campo dos negócio.
- Aplicações de controle e sistemas de automação industrial.
- aplicações de informática para o escritório.
- Software educacional.
- Software de negócios.
- Banco de dados.
- Telecomunicações.
- video games.
- Software médico.
- Software de calculo numérico e simbólico.
Software de programação
O conjunto de ferramentas que permitem ao programadordesenvolver programas de computador usando diferentesalternativas e linguagens de programação, de forma prática.Inclui, entre outros:
• Editores de texto
• Compiladores
• Intérpretes
• Linkers
• Depuradores
• IDE.
Sistema Operativo (SO)
• É a primeira camada de software que é carregado paramemória do computador, quando este é iniciado. Éresponsável pela realização de serviços básicos comuns,inclusive o acesso ao disco, gerenciamento de memória,agendamento de tarefas e interface de usuário.
• Além disso, o sistema operativo garante que os diferentesprogramas sejam executados, ao mesmo tempo, seminterferirem-se uns com os outros
• Este fornece uma plataforma de software no topo daestrutura de hardware de modos a permitir a execução deoutros programas. Em palavras simples, o sistemaoperacional organiza e controla o hardware.
Funções básicas de un SO
User Interfaces
Security Management
Device Management
File Management
Memory Management
Process Management
Hardware
Tipos de SO
NomeFundação/Em
presaAno de
lançamentoVersão mais
recentePercentagem Utilizadores
Windows Microsoft 2012 Windows 8 88.90%[2] 400 milhões[2]
OS X Apple Inc. 2013OS X v10.9
"Mavericks"5.54%[2] 22,5
milhões[2]
Sistemas baseados em Linux
Linus Benedict Torvalds
2013Linux Kernel
3.122,13%[2] 8,5
milhões[2]
Programas y linguagem de Programação
Um programa é uma lista ordenada de instruções que,quando executado, faz com que o computador se comportede uma maneira predeterminada. Uma linguagem deprogramação inclui uma série de comandos que são usadosno desenvolvimento de software.
As linguagens de programação são divididos em trêscategorias:
• Linguagem de máquina;
• Linguagem de baixo nível (assembly);
• Linguagem de alto nível.
Programas y linguagem de Programação
A escolha de uma linguagem de programação, depende dotipo de programa a ser desenvolvido, por exemplo, umprograma de sistema ou programa de aplicação. Escolher umalínguagem particular tem consequências importantes, amedida, se com esta, será fácil de escrever e manter oprograma.
System Software
C
Applications and
Components
Java
C++
Applications
Fortran
Visual Basic
Pascal
Scripts and Macros
JavaScript
Word Basic
Aplicação dos Computadores - Entretenimento
Dependendo da linguagem de programação usada, tradutoresde língua são divididos em três categorias principais:
Lan
guag
e Tr
ansl
ato
rsCompilers
Interpreters
Assembler
Assembler
É uma notação legível por humanos para o código de máquinaque uma arquitetura de computador específica usa, utilizadapara programar dispositivos computacionais, comomicroprocessadores e microcontroladores. A linguagem demáquina, que é um mero padrão de bits, torna-se legível pelasubstituição dos valores em bruto por símbolos chamadosmnemónicos.
Por exemplo, enquanto um computador sabe o que a instrução-máquina IA-21 (10110000 01100001) faz, para osprogramadores é mais fácil recordar a representaçãoequivalente em instruções mnemónicas MOV AL, 61h. Talinstrução ordena que o valor hexadecimal 61 (97, em decimal)seja movido para o registrador 'AL'.
Assembler
Cada arquitetura de computadortem a sua própria linguagem demáquina e. Diferem no número etipo de operações que suportam.Também têm diferentes tamanhose números de registradores, ediferentes representações dostipos de dados armazenados.Enquanto todos os computadoresde utilização genérica são capazesde desempenhar essencialmenteas mesmas funções, o modo comoo fazem é diferente.
Compilador
Um compilador é um programa de computador (ou um grupo deprogramas) que, a partir de um código fonte escrito em umalinguagem compilada, cria um programa semanticamenteequivalente, porém escrito em outra linguagem, código objeto.
São exemplos de compilador: Borland C++, Microsoft Visual C,Dev-C++
Source Code CompilerExecutable
Program
Intérprete
• Um interpretador é outro tipo de tradutor de língua, queanalisa e executa o código-fonte, linha por linha, sem olharpara o programa inteiro. Em outras palavras, um intérpretetraduz uma instrução de um programa e executa deimediato.
• A vantagem de intérpretes é que podem executar umprograma espontaneamente. Já os compiladores requeremalgum tempo, porque o programa executável é construído,com todo código fonte. No entanto, os programasconstruídos por compilação são mais rapidamenteexecutados, dos mesmos que são interpretados.
• São exemplos de Linguagem interpretadas: PHP, Perl,Python, JavaScript, Bash...
Programas y linguagem de Programação
• Linker: O linker é um programa de sistema que interligavários módulos do objeto e bibliotecas para formar umprograma único e coerente (executável).
• Loader: é um tipo de software de sistema, que é responsávelpelo carregamento e transferência do programa executávelpara memória principal. As funções de um Loader inclui aatribuição do tempo de carda de armazenamento e ajudarum programa a ser executado de forma apropriada.
Programas y linguagem de Programação
Modularização
• Modularização em tecnologia da informação é um conceito onde osistema ou software é divido em partes distintas. Compõe oferramental necessário para um programa mais legível com umamelhor manutenção e melhor desempenho por meio daprogramação estruturada.
• Pode ser caracterizado da seguinte forma: Elementoseparadamente endereçável do sistema, menor parte do sistemaque realiza uma função completa independente de outras funções,conjunto de instruções de um programa que pode ser chamado porum nome, sendo ideal que para os outros módulos seja uma caixapreta.
Modularização
A modularização de programas juntamente com outrastécnicas de programação integram o ferramental para aelaboração de programas visando, principalmente, osaspectos de confiabilidade, legibilidade, manutenção eflexibilidade, e Reutilização.
As 20 linguagens de programação mais populares
• C
• Java
• Objective-C
• C++
• PHP
• C♯
• Visual Basic
• Python
• Perl
• JavaScript
• Ruby
• Visual Basic .NET
• Transact-SQL
• Lisp
• Pascal
• Bash
• PL/SQL
• Delphi / Object Pascal
• Ada
• MATLAB
Tarefa
1. C/C++
2. Java
3. C#
4. PHP
5. Windows
6. Linux
7. OS X
8. Compilers
9. Intérprete
10. Assembler
Noções Básicas do Software dos Computadores Digitais
Tema 1 | Conferência 2 | Computaçao I
MSC. Henry Raúl González Brito
Top Related