Académique Documents
Professionnel Documents
Culture Documents
MEMRIA PRINCIPAL
CLOCK
CONTROLE
DISPOSITIVOS DE E/S
Pgina 1 de 9
Unidade Central de Processamento: Unidade de Controle Unidade de Aritmtica e Lgica Registradores de Propsito Geral Registradores Especficos Reg. de Dados da Memria Reg. de Endereos da Memria Contador de Programa (Program Counter) Registrador de Instrues Apontador de Pilha (Stack Pointer) Outros (conforme a CPU) Memria Principal Memria Secundria Unidade de E/S Interfaces Canais de E/S Processadores de E/S Dispositivos de E/S
- RDM - REM - PC - RI - SP
Histrico: Primeiros computadores eletrnicos surgiram na dcada de 30 IBM PC foi concebido em 1980
Pgina 2 de 9
1.2 Memria
Memria: local do computador (hardware) onde se armazenam temporria ou definitivamente dados (nmeros, caracteres e instrues)
Organizao da memria: Endereo ... 4MB ... 1048576 ... 1765 ... 4 3 2 1 0 Contedo ... 10110101 ... 01001010 ... 01001101 ... 01010000 11111111 11101001 11011010 01100100
Pgina 3 de 9
Ciclo de busca e execuo de uma instruo 1a. etapa: Busca da instruo na memria (FETCH) REM <-- PC RDM <-- (REM) 2a. etapa: Decodificao da instruo RI <-- RDM ocorre a decodificao do contedo de RI na UC PC <-- PC + n 3a. etapa: Busca dos operandos da instruo (se houver) REM <-- endereo do operando (Ex: REM <-- REM + 1) RDM <-- (REM) 4a. etapa: Execuo da instruo
Pgina 4 de 9
Instruo de mquina (binrio) 10100001 00000000 00000000 00000101 00000100 00000000 10100011 00000000 00000000
Operao Busca o contedo da palavra de memria 0 e o coloca no reg. AX Adiciona 4 ao reg. AX Armazena o contedo de AX na palavra de memria de endereo 0
Comentrios ; busca o contedo da posio de ; memria dada por A e o coloca no ; reg. AX ; adiciona 4 a AX, resultado em AX ; ; armazena o contedo de AX na ; posio de memria definida por A
Observa-se que: para cada instruo em linguagem montadora corresponde apenas uma instruo em linguagem de mquina; uma instruo em linguagem de mquina pode corresponder a mais de um byte; a programao em linguagem de mquina tediosa e suscetvel a erros.
Pgina 5 de 9
A especificao do programa ECO DO TECLADO NA TELA: - iniciar - apresentar um prompt ao usurio - ler um caracter do teclado - exibir o caracter lido na prxima linha da tela do monitor - terminar
O fluxograma:
Incio
Apresentar um prompt
Mudar de linha
Fim
Pgina 6 de 9
O programa ECO completo: TITLE PROGRAMA DE ECO DO TECLADO NA TELA .MODEL SMALL .STACK 100h .CODE MAIN PROC ; ;apresentacao do prompt ? MOV AH,2 ;funcao DOS para exibir caracter MOV DL,? ;caracter ? INT 21h ;exibir ; ;entrada do caracter pelo teclado MOV AH,1 ;funcao DOS para leitura de caracter INT 21h ;caracter e lido em AL MOV BL,AL ;salvando-o temporariamente em BL ; ;movendo de linha MOV AH,2 ;funcao DOS para exibir caracter MOV DL,0Dh ;caracter ASCII <CR> - return INT 21h ;executando MOV DL,0Ah ;caracter ASCII <LF> - line feed INT 21h ;executando ; ;exibindo na tela o caracter lido: efeito de ECO MOV DL,BL ;recuperando o caracter salvo INT 21h ;exibir ; ;retorno ao DOS MOV AH,4Ch ;funcao DOS para saida INT 21h ;saindo MAIN ENDP END MAIN
Pgina 7 de 9
Explicando as partes: a) O programa inicia sua operao ao ser lanado pelo DOS. b) O usurio estimulado a interagir pela apresentao de um ?: MOV AH,2 MOV DL,'?' INT 21h ;funcao DOS para exibir caracter ;caracter '?' ;exibir
c) Lendo o caracter teclado pelo usurio e salvando-o em num registrador: MOV AH,1 INT 21h MOV BL,AL ;funcao DOS para leitura de caracter ;caracter e' lido em AL ;salvando-o em BL
d) Movendo o cursor da tela para o incio da prxima linha: MOV AH,2 MOV DL,0Dh INT 21h MOV DL,0Ah INT 21h ;funcao DOS para exibir caracter ;caracter ASCII <CR> - return ;executando ;caracter ASCII <LF> - line feed ;executando
e) Recuperando o caracter lido e exibindo-o: MOV DL,BL INT 21h ;recuperando o caracter salvo ;exibir
f) O programa termina devolvendo controle ao DOS: MOV AH,4Ch INT 21h ;funcao DOS para saida ;saindo
Pgina 8 de 9
Como obter o programa ECO.EXE executvel. 1. Edite o program ECO utilizando um editor de texto simples, com sada em texto ASCII. Sugesto: use o EDIT do DOS ou o Bloco de Notas (NOTEPAD) do Windows. Sugere-se que o arquivo (texto ASCII) tenha a extenso .ASM
2. Rode o programa Montador TASM (Borland). Como resultado, aparece em seu diretrio de trabalho um arquivo ECO.OBJ
3. Rode o programa Lincador TLINK. Como resultado, aparece em seu diretrio de trabalho um arquivo ECO.EXE.
4. Rode o programa ECO.EXE, respondendo ao ? com uma letra K, por exemplo. C:\ > ECO.EXE <enter> ?K K C:\ >
<- letra K digitada pelo usurio <- eco da letra K aparece na tela <- note que o controle retorna ao DOS
Tente com outras letras ou procure modificar o programa para obter outros efeitos com caracteres digitados no teclado.
Pgina 9 de 9