• Nenhum resultado encontrado

Docentes. Regras de Avaliação

N/A
N/A
Protected

Academic year: 2021

Share "Docentes. Regras de Avaliação"

Copied!
27
0
0

Texto

(1)

1

© Luís Cruz - 2004 1

Docentes

Professores

Teórica : Luís Cruz

Prática : Gabriel Falcão

© Luís Cruz - 2004 2

Regras de Avaliação

Componente Teórica + Componente Prática

Componente Teórica l11 valores

lAvaliada por exame e exame de recurso lMínimo : 5 valores

Componente Prática

l9 valores resultantes da avaliação contínua das aulas

(2)

© Luís Cruz - 2004 3

Regras de Avaliação

Informação adicional

A admissão a exame por parte de alunos em “regime

normal” (i.e. não são trabalhadores estudantes) depende da frequência de um mínimo de 75%das aulas práticas,

Alunos trabalhadores-estudantes devem combinar com o

docente da prática uma forma alternativa de serem avaliados na vertente prática,

A nota da prática (0-9 valores) é válida para o exame,

exame de recurso e eventuais exames de época especial,

A prova teórica é realizada sem consulta.

Programa

Programa Abreviado

l Noções gerais sobre computadores digitais

l Noções sobre linguagens de programação

l Linguagem de programação Python

(3)

3

© Luís Cruz - 2004 5

Apresentação e Programa

Programa Detalhado

– Noções gerais sobre computadores digitais

l Modelo de von Neumann

l Modelo de computador digital moderno

l Representação de informação em formatos binários

– Informação numérica (inteiros, reais, complexos), – Informação booleana (verdadeiro/falso),

– Informação não numérica (texto, etc.)

– Noções sobre linguagens de programação

l Linguagem máquina l Linguagens assembly

© Luís Cruz - 2004 6

Apresentação e Programa

Programa Detalhado

– Noções sobre linguagens de programação (cont.)

l Linguagens de alto nível

– Interpretadas – Compiladas

Linguagem de Programação Python

l Tipos básicos de dados l Estruturas de controlo de fluxo l Estruturas de dados avançadas l Funções e Módulos

(4)

© Luís Cruz - 2004 7

Bibliografia

“Python - Curso Completo", Pedro Morais, José Nuno Pires, Editora FCA, ISBN 9727222706

"Practical Python", Magnus Lie Hetland, APress, ISBN 1590590066

textos disponíveis na Web em www.python.org

Noções sobre Computadores Digitais

♦ Dispositivos electrónicos programáveis que

manipulam informação que pode assumir valores

de um conjunto discreto (por exemplo

0

e

1

no

caso binário).

♦ Operações básicas são em geral operações

aritméticas, lógicas e de controlo.

♦ Velocidades de execução muito elevadas:

centenas ou milhares de milhões de operações

por segundo.

(5)

5

© Luís Cruz - 2004 9

Modelo de Von Neumann

Arquitectura da generalidade dos computadores

digitais correntes segue o modelo de Von Neumann

consistindo em :

l

Unidade de controlo : comanda todas as acções

l

Unidade aritmética e lógica : responsável pela

execução de operações aritméticas e lógicas J

l

Memória : para armazenamento de resultados

intermédios e finais,

l

Dispositivos de entrada/saída : monitores, discos,

teclados, etc.

© Luís Cruz - 2004 10

(6)

© Luís Cruz - 2004 11

CPU

Computadores modernos concentram a AL e

U-CON num só componente : o CPU (Central

Processing Unit).

Representação Digital de Informação

Quantidades físicas assumem em geral um contínuo

de valores – grandezas analógicas.

Computadores digitais operam e armazenam valores

discretos – representação digital.

Existe um erro inerente ao processo de

representação de uma grandeza analógica por

(7)

7

© Luís Cruz - 2004 13

Representação Digital de Informação

Necessário adoptar um código que defina uma equivalência entre valores analógicos e valores digitais.

Existem muitos códigos possíveis, dependendo da situação/aplicação.

No caso de computadores digitais bináriosos códigos de

representação estabelecem relações entre sequências de

bits*e os valores a representar.

* - bit (Binary Digit) : dígito binário, que pode tomar apenas valores 0 e 1

© Luís Cruz - 2004 14

Representação Digital de Informação

Bits, Bytes e Co

Bits são unidades de informação que podem ter apenas dois

valores possíveis : 0e1.

Bytes são conjuntos de 8 bits. Kilobyte (KB) : 210=1.024 bytes.

Megabyte (MB) : 220=1.048.576 bytes.

(8)

© Luís Cruz - 2004 15

Representação Digital de Informação

Bits

Justapondo n bits obtemos unidades de representação com

2nvalores possíveis.

Exemplo : Juntando 3 bits temos os seguintes 8 valores

possíveis: 000 001 010 011 100 101 110 111 LAdSC1

Representações Binárias - Exemplos

Números Inteiros sem Sinal - Código Natural

63 111111 62 111110 ... ... 3 000011 2 000010 1 000001 0 000000 Inteiro Binário (6 bits)

(9)

Slide 15

LAdSC1 Mostrar como contar as combinações. Dar mais um exemplo para caso de 8 bits. Luis Cruz; 21-09-2004

(10)

© Luís Cruz - 2004 17

Representações Binárias - Exemplos

Caracteres Alfanuméricos – Código ASCII

... ... ‘{‘ 1111011 ... ... ´f´ 1100110 ... ... ‘B’ 1000010 ‘A’ 1000001 Caracter Binário (7 bits)

Representações Numéricas - Inteiros

Notação Posicional – Base b O “número” dn-1dn-2dn-3...d2d1d0

em que os dipodem assumir valores de 0 a b-1

representa o valor numérico

dn-1•bn-1+ d

(11)

10

© Luís Cruz - 2004 19

Representações Numéricas - Inteiros

Exemplo em binário (base 2)

O número binário100101

representa o valor numérico (decimal) D = 1•25+ 0•24+ 0•23+ 1•22+0•21+ 1•20=37

Nota : O maior número representável com n bits é 2n-1. No

caso geral de base b o maior inteiro representável é bn-1.

© Luís Cruz - 2004 20

Representações Numéricas - Inteiros

Como obter a representação binária de um inteiro ? Reparando que dn-1•2n-1+ d n-2•2n-2+ dn-3•2n-3+...+ d2•22+ d1•21+ d0 é igual a (dn-1•2n-2+ d n-2•2n-3+ dn-3•2n-4+...+ d2•21+ d1)•21+ d0

vemos que d0é o resto da divisão do número por 2.

Dividindo repetidamente por dois, os restos são os bits pretendidos.

(12)

© Luís Cruz - 2004 21

Representações Numéricas - Inteiros

Exemplo de conversão de decimal para binário natural

37

decimal

= ???

binário 1 (bit 5) resto 0 = 2 : 1 0 (bit 4) resto 1 = 2 : 2 0 (bit 3) resto 2 = 2 : 4 1 (bit 2) resto 4 = 2 : 9 0 (bit 1) resto 9 = 2 : 18 1 (bit 0) resto 18 = 2 : 37 37decimal= 100101binário Exemplo: Subtrair 00011 a 11001 Exemplo: Somar 10011 e 00110

Aritmética Binária

Adição e Subtracção de Inteiros em Formato Binário Mesmo algoritmo que no caso decimal : Somam-se/subtraem-se os dígitos um a um, transportando o excesso/defeito para a soma/diferença dos dígitos da posição seguinte.

10011 00110 + 11001 11001 00011 -10110

(13)

12

© Luís Cruz - 2004 23

Aritmética Binária

E a multiplicação ?

Também neste caso o algoritmo é o mesmo que no caso decimal !

Exemplo : Multiplicar 1011 por 0101. (em decimal 11 vezes 5)

1011 0101 x 1011 1011 + 110111 © Luís Cruz - 2004 24

Aritmética Binária

A divisão binária segue os mesmos passos que a divisão decimal.

Ou seja, é uma sequência de multiplicações e subtracções. Exemplo : Dividir 110111 por 101. (em decimal 55 : 5)

110111 101 1011 101 00111 101 -0101 101 -000

(14)

© Luís Cruz - 2004 25

Representação com base 8 - Octal

Grupos de 3 bits representam 1 de 8 valores diferentes de acordo com a tabela

7 111 3 011 6 110 2 010 5 101 1 001 4 100 0 000 Oct Bin Oct Bin

Conversão Octal – Binário

Conversão de binário para Octal é imediata :

começando pelo bit menos significativo, dividem-se os bits em grupos de 3, convertendo cada grupo para Octal, de acordo com a tabela.

Exemplo :10101100bin= 010 101 100 = 254Octal A conversão de Octal para binário é igualmente simples : basta substituir cada dígito Octal pelo grupo de 3 bits adequado (ver tabela).

(15)

14

© Luís Cruz - 2004 27

Representação com base 16

-Hexadecimal

Grupos de 4 bits representam 1 de 16 valores diferentes de acordo com a tabela

F 1111 7 0111 E 1110 6 0110 D 1101 5 0101 C 1100 4 0100 B 1011 3 0011 A 1010 2 0010 9 1001 1 0001 8 1000 0 0000 Hex Bin Hex Bin © Luís Cruz - 2004 28

Conversão Hexadecimal-Binário

Conversão Binário <-> Hexadecimal é

semelhante à conversão Octal <-> Binário, sendo

agora os bits agrupados em conjuntos de 4.

Exemplo Bin->Hex :

11011111

bin

= DF

Hex

Exemplo Hex->Bin :

(16)

© Luís Cruz - 2004 29

Representações Numéricas – Inteiros

com Sinal

Como representar o número (negativo) -21 num

formato binário ?

Várias possibilidades...

1. Utilizar um bit adicional para representar o sinal, Sinal+Magnitude

2. Usar um método de representação diferente, por exemplo complemento de 2,

Representações Numéricas – Inteiros com

Sinal – Sinal + Magnitude

Usando um bit adicional para o sinal, a representação

Sinal+Magnitude com n bits tem a forma

bsbn-2bn-3...b1b0

em que bsé o bit de sinal.

Um valor positivo é indicado por um bit de sinal bs igual a

0 e um valor negativo é representado por um bit de sinal

(17)

16

© Luís Cruz - 2004 31

Representações Numéricas – Inteiros com

Sinal – Sinal + Magnitude

Exemplos para representações com 8 bits

(positivo) 00001010bin = 10dec (negativo) 10001010bin = -10dec (negativo !) 10000000bin = -0dec (positivo !) 00000000bin = 0dec (positivo) 01000000bin = 64dec (negativo) 11000000bin = -64dec © Luís Cruz - 2004 32

Representações Numéricas – Inteiros com

Sinal – Sinal + Magnitude

(18)

© Luís Cruz - 2004 33

Representações Numéricas – Inteiros com

Sinal – Sinal + Magnitude

A representação sinal mais magnitude apresenta

alguns problemas:

1. Existem duas representações para o zero, +0 e -0, 2. Permite representar apenas (caso binário com n bits)

2n-1 valores distintos,

3. É difícil executar adições de números representados dessa forma.

Representações Numéricas – Inteiros com

Sinal – Complemento de 10

Para representação com n dígitos decimais, os números negativos são representados pelo complemento de 10 do número positivo correspondente. Esse complemento de 10

é obtido subtraindo a 10no número positivo

correspondente.

Exemplo : A representação de “-2067” num sistema de complemento de 10 para 4 dígitos decimais é obtida

subtraindo a 104 o número 2067, ou seja

(19)

18

© Luís Cruz - 2004 35

Representações Numéricas – Inteiros com

Sinal – Complemento de 10

Não é necessário calcular explicitamente 10

n

-d

pois:

10n-d=((10n-1)-d)+1 ,

10n-1 é um número com n noves,

(10n-1)-d obtém-se complementando cada um dos dígitos

de d (o complemento de 0 é 9, o de 1 é 8, o de 2 é 7, etc.),

– somando 1 ao resultado anterior, ignorando qualquer

transporte para o dígito n+1, obtém-se 10n-d

Exemplo :Para “-2067” correspondendo a d=2067, o

número (10n-1)-d é 7932 e somando 1 obtém-se 7933, tal

como indicado anteriormente.

Exemplo :O negativo de “0000” obtém-se somando 1 a 9999, obtendo-se10000 e desprezando o dígito mais significativo, ou seja 1, obtemos 0000.

© Luís Cruz - 2004 36

Representações Numéricas – Inteiros com

Sinal – Complemento de 2

Semelhante ao sistema Complemento de 10...

Representação de “-d” (com n bits) obtém-se:

1.subtraindo d a 2n ou,

2.complementando todos os bits de d (i.e. onde está 0 fica 1 e onde está 1 fica 0) e somando 1 ao resultado.

Exemplo :

Para 4 bits, obter a representação em

complemento de 2 de “-3”. A representação de 3 é 0011,

de onde obtemos 1100 complementando os bits e após soma de 1 resulta 1101 que é a representação em complementos de 2 de “-3”.

(20)

© Luís Cruz - 2004 37

Representações Numéricas – Inteiros com

Sinal – Complemento de 2

Regra simplificada para obtenção da representação em

complemento de 2:

“Começando pelo bit menos significativo do número cujo negativo pretendemos determinar, copiar todos os bits até ao primeiro 1, copiando os restantes invertidos (onde estava 0 passa a 1 e vice-versa)”

Exemplo : Para determinar a representação com 8 bits de

-44 partimos de -44dec=00101100bin. Copiando todos os bits

desde o mais à direita até ao primeiro igual a 1 (incluído) vem

XXXXX100, invertendo e copiando os restantes resulta

11010100. Ou seja -44dec= 11010100bin

Representações Numéricas – Inteiros com

Sinal – Complemento de 2

(21)

20

© Luís Cruz - 2004 39

Representações Numéricas – Reais

Números reais podem ser representados em vários

formatos:

1. Vírgula fixa : número de casa decimais é fixo

Exemplo : .1001001bin = (2-1+2-4+2-7)dec=0,5703125dec

2. Vírgula flutuante : representação do tipo mantissa x

baseexpoente . Cada número é representado por um

conjunto de bits para a mantissa, um bit para o sinal e um conjunto de bits para o expoente.

© Luís Cruz - 2004 40

Representações Numéricas – Vírgula

Flutuante

Norma IEEE 754

Número = +/- mantissa x 2

expoente-offset

s expoente mantissa

(22)

© Luís Cruz - 2004 41

Representações Numéricas – Vírgula

Flutuante – IEEE 74

Normalização

O mesmo número real pode ter várias representações do tipo

mantissa x baseexpoente. Para evitar este tipo de ambiguidade,

usa-se uma representação normalizada.

No caso da norma IEEE 754, a normalização consiste em representar o número com uma mantissa tal que o primeiro bit a seguir (à direita) da vírgula é sempre 1 e que por isso não é necessário armazenar, poupando-se um bit.

Representações Numéricas – Vírgula

Flutuante – IEEE 754

Expoente

Os bits do campo expoente não representam

exactamente o expoente mas um valor

polarizado do expoente. Para obter o valor

“verdadeiro”

do expoente é

necessário

subtrair-lhe uma quantidade fixa, o offset que

para a norma IEEE 754 e formato de precisão

simples vale 127.

(23)

22

© Luís Cruz - 2004 43

Representações Numéricas – Vírgula

Flutuante – IEEE 754

Formatos suportados

113 15 16 Quádrupla 53 11 8 Dupla 24 8 4 Simples

Bits Mantissa + Sinal Bits

Expoente Bytes

Precisão

© Luís Cruz - 2004 44

Representações Numéricas – Vírgula

Flutuante – IEEE 754

Gamas de Valores

33-36 1.2e4932 3.4e-4932 Quádrupla 15-17 1.8e308 2.2e-308 Dupla 6-9 3.4e38 1.2e-38 Simples Dígitos Decimais Significativos Máximo Minímo Precisão

(24)

© Luís Cruz - 2004 45

Representações Numéricas – Vírgula

Flutuante – IEEE 754

Valores Especiais

100...000 111...111 ? NaN 000...000 111...111 +/-Infinito 000...000 000...000 +/-Zero Mantissa Expoente Sinal Valor

Representações Alfanuméricas –

Código ASCII

Também os caracteres alfanuméricos (A,B,a,d,1,4) são representados internamente por conjuntos de bits.

O código ASCII (American Standard Code for Information Interchange) estabelece a correspondência entre cadeias de 7 bits e um conjunto de caracteres que inclui todas as letras maíusculas e minusculas de a a z , o espaço em branco, todos os dígitos decimais, além de outros caracteres com significado especial (caracteres de controlo).

(25)

24 © Luís Cruz - 2004 47

Representações Alfanuméricas –

Código ASCII

Tabela ASCII

DEL o _ O ? / US SI 1111 ~ n ^ N > . RS SO 1110 .... .... .... .... .... .... .... .... .... q a Q A 1 ! DC1 SOH 0001 p ` P @ 0 SP DLE NUL 0000 b3b2b1b0 111 110 101 100 011 010 001 000 b6b5b4

NUL-Null, SOH-Start of Heading, SO-Shift Out, SI-Shift In, SP-Space, DEL-Delete

© Luís Cruz - 2004 48

Representações Alfanuméricas –

Código ASCII

Código ASCII só permite representar 128 caracteres distintos.

Algumas extensões do código ASCII a 8 bits, permitiram extender a gama de representação a 256 caracteres. Esta solução também não é satisfatória, pois não resolve, por exemplo, o problema da representação de textos escritos em línguas cujas escritas contem mais de 256 caracteres/pictogramas distintos.

(26)

© Luís Cruz - 2004 49

Representações Alfanuméricas –

Código Unicode

Solução

Código UNICODE que suporta até 32 bits.

32 bits permitem representar 4.294.967.296

caracteres diferentes !

Deve ser suficiente mesmo para a língua chinesa J

Hardware e Software

O que é o “Hardware” ???

Componentes

físicos

que

constituem

um

computadores; teclado, monitor, rato, CPU, circuitos

de memória, etc.

E o “Software” ?

Todos os programas que se podem correr no

hardware apropriado.

(27)

26

© Luís Cruz - 2004 51

Tipos de Software

l

Software de Gestão do Computador (Sistema de

Operação) : Gere o funcionamento do computador,

permitindo a utilização regrada dos seus recursos

físicos. São exemplos o Linux e o Microsoft

Windows.

l

Software de aplicação : Todo e qualquer programa

com uma função específica. Podem ser editores

de texto, intérpretes Python, ou ainda programas

desenvolvidos pelo utilizador.

© Luís Cruz - 2004 52

Referências

Documentos relacionados

Outra maneira que se tem utilizado para diminuir o efeito halteres é a utilização de perfis diferentes da seção longitudinal do núcleo''' ^' A mudança para um perfil em angulo

[r]

[r]

• Ler e escrever números na representação decimal (até à milésima) e relacionar diferentes representações dos números racionais não negativos.. • Ler e representar

A nível funcional, não foram encontradas diferenças significativas na MIF motora na admissão e na alta, nem da “MIF eficiência”, entre os subgrupos de idade e

 Q* = subconjunto dos números racionais não-nulos, formado pelos números racionais sem o zero. Reúne os números decimais não exatos com uma representação infinita e

na 54ª Assembleia Mundial de Saúde da OMS, ocorreu a aprovação de um novo modelo, a Classificação Internacional de Funcionalidade, Incapacidade e Saúde (CIF) com o

Nos casos anteriores, a representação decimal dos racionais tem um número finito de casas depois da vírgula. Esses números são conhecidos como decimais finitos. Mas há racionais