Cap - PowerPoint PPT Presentation

About This Presentation
Title:

Cap

Description:

Cap tulo I Conceitos Prim rios 1.1 Estrutura de um computador 1.2 Informa es manipuladas por um computador 1.3 Evolu o das linguagens de ... – PowerPoint PPT presentation

Number of Views:94
Avg rating:3.0/5.0
Slides: 109
Provided by: Fabio217
Category:
Tags: cap | counter | decimal

less

Transcript and Presenter's Notes

Title: Cap


1
Capítulo I Conceitos Primários
  • 1.1 Estrutura de um computador
  • 1.2 Informações manipuladas por um computador
  • 1.3 Evolução das linguagens de programação

2
1.3 Evolução das linguagens de programação
  • 1.3.1 A linguagem de máquina
  • Linguagem de máquina conjunto de instruções que
    o hardware de um computador é capaz de realizar
  • Cada instrução é expressa por uma sequência de
    bits
  • Seja um computador bem primitivo mostrado a
    seguir

3

RAM 2048 (2 K) palavras de 16 bits Endereços
variam de 0 a 2047 ocupam 11 bits
CPU
Circuito de acesso à memória
4

Uma instrução ocupa 16 bits
CPU
Circuito de acesso à memória
5

Os dados são inteiros em comp-2 de 16 bits Os
valores estão no intervalo -32768, 32767
CPU
Circuito de acesso à memória
6

Registrador de propositos gerais AC (16
bits) AC Accumulator
CPU
Circuito de acesso à memória
7

Em toda operação na ALU Operandos em AC e DR
- Resultado no AC
CPU
Circuito de acesso à memória
8

Registradores de propósitos específicos DR, AR,
PC, IR
CPU
Circuito de acesso à memória
9

DR Data register AR Address register
PC Program counter IR Instruction register
CPU
Circuito de acesso à memória
10

DR (16 bits) contém o que será escrito em alguma
palavra da RAM ou Recebe o que é lido de alguma
palavra da RAM
CPU
Circuito de acesso à memória
11

DR Pode conter uma instrução (campos
codop 5 bits e ender 11 bits) ou um dado
(16 bits)
CPU
Circuito de acesso à memória
12

AR (11 bits) contém o endereço da palavra da RAM
a ser acessada, seja para leitura ou para escrita
CPU
Circuito de acesso à memória
13

PC (11 bits) contém o endereço na RAM da próxima
instrução a ser executada
CPU
Circuito de acesso à memória
14

IR (5 bits) contém o código da instrução a ser
executada pela unidade de controle
CPU
Circuito de acesso à memória
15
  • Conjunto de instruções primitivo

Mem (Ender) Palavra da RAM cujo endereço está
no campo ender da instrução
16
  • Seja um programa para fazer
  • Mem(12) ? Mem(10) Mem(11)
  • Seja o seguinte conteúdo das palavras 10 e 11 da
    RAM

Endereço Conteúdo em binário Conteúdo em decimal Ação
0 00001 00000001010 1 10 AC ? Mem(10)
1 00100 00000001011 4 11 AC ? AC Mem(11)
2 00010 00000001100 2 12 Mem(12) ? AC
Endereço Conteúdo em binário Conteúdo em decimal
10 0000000000011001 25
11 0000000000001110 14
Seja tudo isso guardado na RAM do computador
17

Os conteúdos aparecem em decimal por razões
didáticas Mas, na realidade, eles ficam em
binário
CPU
Circuito de acesso à memória
18

Iniciar a execução pelo endereço zero
CPU
Circuito de acesso à memória
0
19

AR ? PC
CPU
Circuito de acesso à memória
0
20

AR ? PC DR ? Mem(AR)
CPU
1 10
Circuito de acesso à memória
21

AR ? PC DR ? Mem(AR) IR ? DR(codop)
CPU
Circuito de acesso à memória
1
22

AR ? PC DR ? Mem(AR) IR ? DR(codop) PC ? PC
1 (preparando p/próxima instrução)
CPU
Ocorreu a recuperação da instrução pelo controle
Circuito de acesso à memória
Agora o controle vai interpretá-la
1
0
23

Interpretação IR 1 Objetivo AC ? Mem(ender)
CPU
Circuito de acesso à memória
24

AR ? DR(ender)
CPU
Circuito de acesso à memória
10
0
25

AR ? DR(ender) DR ? Mem(AR)
CPU
25
Circuito de acesso à memória
26

AR ? DR(ender) DR ? Mem(AR) AC ? DR
Encerrada a execução da instrução
CPU
25
Circuito de acesso à memória
Começa a recuperação da próxima instrução
27

AR ? PC
CPU
Circuito de acesso à memória
1
10
28

AR ? PC DR ? Mem(AR)
CPU
25
Circuito de acesso à memória
29

AR ? PC DR ? Mem(AR) IR ? DR(codop)
CPU
Circuito de acesso à memória
4
1
30

AR ? PC DR ? Mem(AR) IR ? DR(codop) PC ? PC
1
CPU
Circuito de acesso à memória
2
1
31

Interpretação IR 4 Objetivo AC ? AC
Mem(ender)
CPU
Circuito de acesso à memória
32

AR ? DR(ender)
CPU
Circuito de acesso à memória
1
11
33

AR ? DR(ender) DR ? Mem(AR)
CPU
14
Circuito de acesso à memória
34

AR ? DR(ender) DR ? Mem(AR) AC ? AC DR
Encerrada a execução da instrução
CPU
25
39
Circuito de acesso à memória
Começa a recuperação da próxima instrução
35

AR ? PC
CPU
Circuito de acesso à memória
2
11
36

AR ? PC DR ? Mem(AR)
CPU
14
Circuito de acesso à memória
37

AR ? PC DR ? Mem(AR) IR ? DR(codop)
CPU
Circuito de acesso à memória
4
2
38

AR ? PC DR ? Mem(AR) IR ? DR(codop) PC ? PC
1
CPU
Circuito de acesso à memória
2
3
39

Interpretação IR 2 Objetivo Mem(ender) ? AC
CPU
Circuito de acesso à memória
40

AR ? DR(ender)
CPU
Circuito de acesso à memória
2
12
41

AR ? DR(ender) DR ? AC
CPU
39
Circuito de acesso à memória
42

AR ? DR(ender) DR ? AC Mem(AR) ? DR
Encerrada a execução da instrução
CPU
Circuito de acesso à memória
39
A execução do programa continua ...
43
  • Ciclo de execução das instruções

Falso
CPU ativa?
Verdade
Recuperação
Interpretação
Execução
44
  • Microprograma da CPU

Falso
CPU ativa?
Verdade
A execução da instrução stop desativa a CPU
AR ? PC DR ? Mem(AR) IR ? DR(codop) PC ? PC
1
IR
1
4
2
AR ? DR(ender) DR ? Mem(AR) AC ? DR
AR ? DR(ender) DR ? AC Mem(AR) ? DR
AR ? DR(ender) DR ? Mem(AR) AC ? AC DR
45

O programador de linguagem de máquina não precisa
saber que existem os registradores de propósitos
específicos DR, AR, PC, IR
CPU
Circuito de acesso à memória
46

Basta saber que ele pode manipular o AC por meio
de instruções
CPU
Circuito de acesso à memória
47

Seja então a execução, abstraindo-se dos outros
registradores
CPU
Circuito de acesso à memória
48

CPU
Circuito de acesso à memória
49

CPU
Circuito de acesso à memória
50

CPU
Circuito de acesso à memória
51

CPU
Circuito de acesso à memória
52

CPU
Circuito de acesso à memória
53

CPU
Circuito de acesso à memória
54
  • Programa para somar números inteiros positivos
    lidos

55

Seja a execução a partir do endereço 0
Números a serem lidos 10, 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
11
56

Mem(10) ? 0
Números a serem lidos 10, 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
11
57

Mem(10) ? 0
Números a serem lidos 10, 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
11
58

Ler (Mem(11))
Números a serem lidos 10, 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
11
59

Ler (Mem(11))
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
60

AC ? Mem(11)
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
61

AC ? Mem(11)
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
62

Se AC 0 desviar p/Mem(8)
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
63

Se AC 0 desviar p/Mem(8) falso
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
64

Se AC lt 0 desviar p/Mem(8)
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
65

Se AC lt 0 desviar p/Mem(8) falso
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
66

AC ? AC Mem(10)
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
67

AC ? AC Mem(10)
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
68

Mem(10) ? AC
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
0
10
10
11
69

Mem(10) ? AC
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
10
11
70

Desviar p/Mem(1)
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
10
11
71

Ler(Mem(11))
Números a serem lidos 15, 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
10
11
72

Ler(Mem(11))
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
73

AC ? Mem(11)
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
74

AC ? Mem(11)
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
75

Se AC 0 desviar p/Mem(8)
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
76

Se AC 0 desviar p/Mem(8) falso
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
77

Se AC lt 0 desviar p/Mem(8)
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
78

Se AC lt 0 desviar p/Mem(8) Falso
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
79

AC ? AC Mem(10)
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
80

AC ? AC Mem(10)
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
81

Mem(10) ? AC
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
10
10
15
11
82

Mem(10) ? AC
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
15
11
83

Desviar p/Mem(1)
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
15
11
84

Ler(Mem(11))
Números a serem lidos 8, -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
15
11
85

Ler(Mem(11))
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
86

AC ? Mem(11)
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
87

AC ? Mem(11)
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
88

Se AC 0 desviar p/Mem(8)
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
89

Se AC 0 desviar p/Mem(8) falso
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
90

Se AC lt 0 desviar p/Mem(8)
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
91

Se AC lt 0 desviar p/Mem(8) falso
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
92

AC ? AC Mem(10)
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
93

AC ? AC Mem(10)
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
94

Mem(10) ? AC
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
25
10
8
11
95

Mem(10) ? AC
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
8
11
96

Desviar p/Mem(1)
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
8
11
97

Ler(Mem(11))
Números a serem lidos -2
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
8
11
98

Ler(Mem(11))
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
99

AC ? Mem(11)
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
100

AC ? Mem(11)
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
101

Se AC 0 desviar p/Mem(8)
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
102

Se AC 0 desviar p/Mem(8) falso
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
103

Se AC lt 0 desviar p/Mem(8)
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
104

Se AC lt 0 desviar p/Mem(8) verdade
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
105

Escrever(Mem(10))
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
106

Escrever(Mem(10))
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
33
107

Encerrar a execução
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
33
108

Fim da execução
Números a serem lidos
CPU
Circuito de acesso à memória
7
16 10
8
17 0
9
33
10
-2
11
33
Write a Comment
User Comments (0)
About PowerShow.com