26
Noções Básicas do Software dos Computadores Digitais Tema 1 | Conferência 2 | Computaçao I MSC. Henry Raúl González Brito [email protected] , [email protected]

Noções Básicas do Software dos Computadores Digitais

Embed Size (px)

Citation preview

Page 1: Noções Básicas do Software dos Computadores Digitais

Noções Básicas do Software dos Computadores Digitais

Tema 1 | Conferência 2 | Computaçao I

MSC. Henry Raúl González Brito

[email protected], [email protected]

Page 2: Noções Básicas do Software dos Computadores Digitais

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.

Page 3: Noções Básicas do Software dos Computadores Digitais

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.

Page 4: Noções Básicas do Software dos Computadores Digitais

Introdução

Page 5: Noções Básicas do Software dos Computadores Digitais

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.

Page 6: Noções Básicas do Software dos Computadores Digitais

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.

Page 7: Noções Básicas do Software dos Computadores Digitais

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...

Page 8: Noções Básicas do Software dos Computadores Digitais

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.

Page 9: Noções Básicas do Software dos Computadores Digitais

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.

Page 10: Noções Básicas do Software dos Computadores Digitais

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.

Page 11: Noções Básicas do Software dos Computadores Digitais

Funções básicas de un SO

User Interfaces

Security Management

Device Management

File Management

Memory Management

Process Management

Hardware

Page 13: Noções Básicas do Software dos Computadores Digitais

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.

Page 14: Noções Básicas do Software dos Computadores Digitais

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

Page 15: Noções Básicas do Software dos Computadores Digitais

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

Page 16: Noções Básicas do Software dos Computadores Digitais

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'.

Page 17: Noções Básicas do Software dos Computadores Digitais

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.

Page 18: Noções Básicas do Software dos Computadores Digitais

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

Page 19: Noções Básicas do Software dos Computadores Digitais

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...

Page 20: Noções Básicas do Software dos Computadores Digitais

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.

Page 21: Noções Básicas do Software dos Computadores Digitais

Programas y linguagem de Programação

Page 22: Noções Básicas do Software dos Computadores Digitais

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.

Page 23: Noções Básicas do Software dos Computadores Digitais

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.

Page 25: Noções Básicas do Software dos Computadores Digitais

Tarefa

1. C/C++

2. Java

3. C#

4. PHP

5. Windows

6. Linux

7. OS X

8. Compilers

9. Intérprete

10. Assembler

Page 26: Noções Básicas do Software dos Computadores Digitais

Noções Básicas do Software dos Computadores Digitais

Tema 1 | Conferência 2 | Computaçao I

MSC. Henry Raúl González Brito

[email protected], [email protected]