A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

ARQUITETURA DE COMPUTADORES SOFTWARE PROGRAMA SEQUENCIA DE INSTRUÇÕES

Apresentações semelhantes


Apresentação em tema: "ARQUITETURA DE COMPUTADORES SOFTWARE PROGRAMA SEQUENCIA DE INSTRUÇÕES"— Transcrição da apresentação:

1 SOFTWARE PROGRAMA ------------------- ------------------
ARQUITETURA DE COMPUTADORES SOFTWARE PROGRAMA SEQUENCIA DE INSTRUÇÕES TIPOS DE INSTRUÇÕES MOVIMENTAÇÃO DE DADOS ARITMETICAS E LOGICAS DESVIO CHAMADA E RETORNO DE ROTINAS

2 MAQUINA A SER CONTROLADA
ARQUITETURA DE COMPUTADORES SISTEMAS EMBUTIDOS OU DEDICADOS NÃO VOLATIL MEM FIRMWARE PROGRAMA CPU MAQUINA A SER CONTROLADA E/S

3 SISTEMAS MEM CPU E/S APLICATIVOS ARQUITETURA DE COMPUTADORES
PROPOSITO GERAL MEM MEMORIA SEMICONDUTORA FLASH, NÃO VOLATIL BIOS ESTATICA, DINAMICA, VOLATIL PROGRAMAS CPU DISCO RIGIDO E/S TECLADO REDE MONITOR SIST. OPERACIONAL MODEM MOUSE APLICATIVOS

4 APLICATIVOS GERAÇÃO ARQUITETURA DE COMPUTADORES BAIXO NIVEL
PROGRAMA EDITADO EM LING. ASSEMBLY* PROGRAMA ASSEMBLER CODIGO DE MAQUINA * NESTA LINGUAGEM,CADA COMANDO CORRESPONDE A UM CODIGO DE MAQUINA

5 APLICATIVOS GERAÇÃO ARQUITETURA DE COMPUTADORES ALTO NIVEL
PROGRAMA EDITADO, (POR EXEMPLO), EM LING. C* PROGRAMA COMPILADOR C CODIGO DE MAQUINA * NESTA LINGUAGEM,CADA COMANDO CORRESPONDE A VARIOS CODIGOS DE MAQUINA

6 INSTRUÇÕES ARQUITETURA DE COMPUTADORES MOVIMENTAÇÃO DE DADOS
ARITMETICAS LOGICAS DESVIO CHAMADA DE ROTINA RETORNO DE ROTINA MANIPULAÇÃO DE PILHA ENTRADA E SAIDA ESPECIAIS

7 MOVIMENTAÇÃO DE DADOS – ENTRE REG`s
ARQUITETURA DE COMPUTADORES MOVIMENTAÇÃO DE DADOS – ENTRE REG`s B. 1 X16 + R.END B.END 20 16 CS DS ES SS RASC1 T3 16 B. 2 MEMORIA 8 B.DADOS IP SP SI DI RASC2 UNID. DE INTERF. = , +1, -1 AX BX CX DX T1 T2 IR 8 MOV BX,AX ALU B. 3 FC 8 B. 4 20 BITS R.DADOS 16 BITS RD 8 BITS UNID. DE CONTROLE WR 1 BIT

8 MOV. DE DADOS – ENTRE REG E MEMORIA
ARQUITETURA DE COMPUTADORES MOV. DE DADOS – ENTRE REG E MEMORIA B. 1 X16 + R.END B.END 20 16 CS DS ES SS RASC1 T3 16 B. 2 MEMORIA 8 B.DADOS IP SP SI DI RASC2 UNID. DE INTERF. = , +1, -1 AX BX CX DX T1 T2 IR 8 MOV CX,[BX] ALU B. 3 FC 8 B. 4 20 BITS R.DADOS 16 BITS RD 8 BITS UNID. DE CONTROLE WR 1 BIT

9 MOV. DE DADOS – DADO IMEDIATO
ARQUITETURA DE COMPUTADORES MOV. DE DADOS – DADO IMEDIATO B. 1 X16 + R.END B.END 20 16 CS DS ES SS RASC1 T3 16 B. 2 MEMORIA 8 B.DADOS IP SP SI DI RASC2 UNID. DE INTERF. = , +1, -1 AX BX CX DX T1 T2 IR 8 MOV CL,37H ALU B. 3 FC 8 B. 4 20 BITS R.DADOS 16 BITS RD 8 BITS UNID. DE CONTROLE WR 1 BIT

10 ARITMETICAS E LOGICAS ADD AL,BL ARQUITETURA DE COMPUTADORES + 20 16 CS
X16 + R.END B.END 20 16 CS DS ES SS RASC1 T3 16 B. 2 MEMORIA 8 B.DADOS IP SP SI DI RASC2 UNID. DE INTERF. = , +1, -1 AX BX CX DX T1 T2 IR 8 ALU B. 3 FC 8 B. 4 20 BITS ADD AL,BL R.DADOS 16 BITS RD 8 BITS UNID. DE CONTROLE WR 1 BIT

11 DESVIO – CONDICIONAL E INCONDICIONAL
ARQUITETURA DE COMPUTADORES DESVIO – CONDICIONAL E INCONDICIONAL INSTRUÇÕES FLAG DE CARRY (FC) ALTERADO JP C NHNL FC=1 FC=0 JMP XHXL NHNL XHXL

12 CHAMADA DE ROTINA / RETORNO DE ROTINA
ARQUITETURA DE COMPUTADORES CHAMADA DE ROTINA / RETORNO DE ROTINA INSTRUÇÕES NA CHAMADA DA ROTINA O ENDEREÇO DE RETORNO DEVE SER PRESERVADO CALL NHNL NHNL RET

13 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH AL VAR1 BH VAR4 BL VAR3 CH VAR2 CL DH DL C SOMA DE VARIAVEIS A VAR1 = VAR1 + VAR2 + VAR3 + VAR4; ADD AL,CH ADD AL,BL ADD AL,BH OBS: POR SIMPLICIDADE, NÃO FOI LEVADO EM CONTA OS CARRY´s GERADOS PELAS SOMAS

14 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH VAR1 AL VAR3 BH BL CH VAR2 CL DH DL C SOMA E SUBTRAÇÃO DE VARIAVEIS VAR1 = VAR1 + VAR2; VAR3 = VAR3 – VAR1; A ADD AH,CH SUB AL,AH

15 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH TEMP AL BH VAR1 BL VAR2 CH VAR3 CL VAR4 DH VAR5 DL C SOMA E SUBTRAÇÃO DE VARIAVEIS, OBEDECENDO A PRECEDENCIA. OBS: AS VARIAVEIS DEVEM SER PRESERVADAS A VAR5 = (VAR1 + VAR2) – (VAR3 + VAR4); MOV DH,BH ADD DH,BL MOV AH,CH ADD AH,CL SUB DH,AH

16 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY ESTRUTURA DE DADOS ESCALARES VETOR DADOS REGISTRADOR CPU MEMORIA REG CPU DADOS NA MEM. EM END´s CONSECUTIVOS

17 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH AL BX BASE DO VETOR CH VAR1 CL DH DL C SOMA DE ELEMENTOS DE VETOR COM ESCALAR A VAR1 = VAR[12] + VAR[8] + VAR1; ADD CH,[BX][12] ADD CH,[BX][8]

18 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH AL BX BASE DO VETOR CH VAR1 CL DH DL SI I : INDICE SOMA DE ELEMENTO DE VETOR COM ESCALAR OBS: INDICE É UMA VARIAVEL C A VAR1 = VAR1 + VAR[I]; ADD CH,[BX][SI]

19 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH I AL J BH F BL G CH CL H DH DL C DESVIO CONDICIONAL LABEL OU ROTULO MOV BH,BL ADD BH,CL JMP L2 L1: MOV BH,BL SUB BH,CL L2: IF (I = = J) GOTO L1; F = G + H; L1: F = G – H; A CMP AH,AL JP NZ L1 I = J  FZ =1 I  J  FZ = 0

20 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH I AL J BH F BL G CH CL H DH DL C IF THEN ELSE JMP L2 L1: MOV BH,BL SUB BH,CL L2: A IF (I= = J) F = G + H; ELSE F = G - H; CMP AH,AL JP NZ L1 MOV BH,BL ADD BH,CL

21 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AX J BX END. BASE CX H DH DL G SI I C LOOP COM ELEM. DE VETOR INDEXADO CMP SI,CX JP NZ LOOP LOOP: G = G + A[I]; I = I + J; IF(I != H) GOTO LOOP; A ADD DL,[BX][SI] ADD SI,AX

22 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AX J BX END. BASE CX DH DL K SI I C LOOP WHILE JMP DLOOP SEGUE: WHILE (SAVE[I] = = K) I = I + J; A DLOOP: CMP [BX][SI],DL JP NZ SEGUE ADD SI,AX

23 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH F AL I BX CH J CL H DH DL TEMP SI k C SWITCH CASE MEMORIA END BASE DA TAB DE DESVIO L0 (2BYTES) SWITCH(K) { CASE 0 : F = I + J; BREAK CASE 1 : F = J + H; BREAK CASE 2 : F =J - H; BREAK CASE 3 : F = I - J; BREAK } L1 (2BYTES) L2 (2BYTES) L3 (2BYTES)

24 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY A L1: MOV AH,CH ADD AH,CL JMP D_EXITSWITCH L2: SUB AH,CL L3: MOV AH,AL SUB AH,CH D_EXITSWITCH: SUB DX,DX ; TEMP =0 ADD SI, DX ; SE K < 0 -> FS =1 JP S D_EXITSWITCH MOV DX,4 CMP SI,DX ; SE K < 4 -> FC = 1 JP NC D_EXITSWITCH JMP [BX] [ 2 * SI] L0: MOV AH,AL ADD AH,CL JMP D_EXITSWITCH

25 SUPORTE A FUNÇÕES PELO HARDWARE
ARQUITETURA DE COMPUTADORES SUPORTE A FUNÇÕES PELO HARDWARE PROGR. FICA MAIS INTELIGIVEL OCUPAÇÃO DE MEM. DIMINUE PROGR. FICA MAIS LENTO FUNÇÃO OU SUB-ROTINA: CODIGO REUTILIZAVEL MEMORIA MEMORIA PROGRAMA CALL FUNÇÃO1 1 FUNÇÃO1 CALL FUNÇÃO2 RET MEMORIA 2 FUNÇÃO2 RET 4 3 PILHA (STACK) LIFO (LAST IN FIRST OUT) 2 END. RET. FUNÇÃO1 3 1 END. RET. PROGR 4 TOPO XXXXXXXXXX

26 SUPORTE A FUNÇÕES PELO HARDWARE
ARQUITETURA DE COMPUTADORES SUPORTE A FUNÇÕES PELO HARDWARE LOCALIZAÇÃO DA LIFO MAIS COMUM CPU MEMORIA LIFO LIFO LOCALIZAÇÃO DO REG MARCADOR DE TOPO CPU CPU TOPO NOME DO REG MARCADOR DE TOPO STACK POINTER (SP)

27 SP NA CPU (8080 – SIMPLIFICADA)
ARQUITETURA DE COMPUTADORES SP NA CPU (8080 – SIMPLIFICADA) 16 R.END B.END PC DC SP A B MEMORIA 8 B.DADOS R.DADOS UNID. DE INTERFACE RA VI IR T1 T2 REG´s FC ALU CONTR. CONEXÃO 16 BITS RD UNID. DE CONTROLE 8 BITS WR 1 BIT

28 SP NA CPU (8088 – SIMPLIFICADA)
ARQUITETURA DE COMPUTADORES SP NA CPU (8088 – SIMPLIFICADA) B. 1 X16 + R.END B.END 20 16 CS DS ES SS RASC1 T3 16 B. 2 MEMORIA 8 B.DADOS IP SP SI DI RASC2 UNID. DE INTERF. = , +1, -1 AX BX CX DX T1 T2 IR 8 REG´s ALU B. 3 FC 8 B. 4 20 BITS R.DADOS 16 BITS RD 8 BITS UNID. DE CONTROLE WR 1 BIT

29 INSTRUÇÕES DE CHAMADA E RETORNO DE ROTINA
ARQUITETURA DE COMPUTADORES INSTRUÇÕES DE CHAMADA E RETORNO DE ROTINA CHAMADA CALL NHNL RETORNO RET

30 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH F AL BH BL G CH H CL I DH J DL G SP X C A FUNÇÃO NÃO RECURSIVA PUSH DX PUSH CX ADD DL, CH ADD CL, DH SUB DL, CL MOV AH,DL POP CX POP DX RET INT EXEMPLO (INT G, INT H, INT I, INT J) { INT F; F = (G + H) – ( I + J); RETURN F }

31 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CHAMADA DA FUNÇÃO C A FUNÇÃO NÃO RECURSIVA EXEMPLO (G, H, I,J) CALL EXEMPLO

32 INSTRUÇÕES DE MANIPULAÇÃO DE PILHA
ARQUITETURA DE COMPUTADORES INSTRUÇÕES DE MANIPULAÇÃO DE PILHA USO : PRESERVAR O CONTEUDO DE REGISTRADORES DO PROGRAMA CHAMADOR QUE TAMBEM SÃO UTILIZADOS PELA ROTINA CHAMADA ARMAZENAR NA PILHA PUSH REG (16 bits) RETIRAR DA PILHA POP REG (16 bits) OBS: POP´s NA ORDEM INVERSA DOS PUSH´s

33 PASSAGEM DE PARAMETROS PELA PILHA
ARQUITETURA DE COMPUTADORES PASSAGEM DE PARAMETROS PELA PILHA QUANDO O NUMERO DE PARAMETROS É MAIOR DO QUE O NUMERO DE REGISTRADORES DA CPU, O PROGRAMA CHAMADOR COLOCA OS PARAMETROS NA PILHA E ARMAZENA NO REGISTRADOR BP( BASE POINTER) DA CPU O ENDEREÇO DA PILHA RELATIVO AO 1O PARAMETRO PILHA (STACK) LIFO(LAST IN FIRST OUT) SP END. RET PROGR. BP END. 1O PARAMETRO.

34 BP NA CPU (8088 – SIMPLIFICADA)
ARQUITETURA DE COMPUTADORES BP NA CPU (8088 – SIMPLIFICADA) B. 1 X16 + R.END B.END 20 16 CS DS ES SS RASC1 T3 16 B. 2 8 B.DADOS IP SP SI DI RASC2 BP UNID. DE INTERF. = , +1, -1 AX BX CX DX T1 T2 IR 8 REG´s ALU B. 3 FC 8 B. 4 20 BITS R.DADOS 16 BITS RD 8 BITS UNID. DE CONTROLE WR 1 BIT

35 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY CONDIÇÃO INICIAL AH AL TEMP1 BH BL CH TEMP CL N DH J DL FACT SP X C A FUNÇÃO RECURSIVA: FATORIAL DESVIO: SUB CL,1 CALL FACT ADD CL,1 MOV AL,CL MUL DL MOV DL,AL POP AX POP CX RET FACT: PUSH CX PUSH AX MOV CH,1 CMP CL,CH JP NC DESVIO MOV DL,1 POP AX POP CX RET INT FACT (INT N) { IF ( N< 1) RETURN (1) ELSE RETURN (N X FACT(N-1); }

36 LINGUAGEM C X LINGUAGEM ASSEMBLY
ARQUITETURA DE COMPUTADORES LINGUAGEM C X LINGUAGEM ASSEMBLY OBS: N 1 CMP CL,CH ; N <1  FC =1 MUL DL ; AX  AL x DL

37 CL =3 DL = FACT SP =X EXERCICIO 11 ARQUITETURA DE COMPUTADORES
PREENCHA OS QUADROS ABAIXO A MEDIDA QUE A ROTINA FACT ESTIVER SENDO EXECUTADA PARA N=3, DESDE A SUA CHAMADA. OBS: FACT(0)= 1, FACT(1) = 1x FACT(0) = 1, FACT(2) = 2x FACT(1) = 2, FACT(3) = 3x FACT(2) = 6 CL = DL = FACT SP =X

38 EXERCICIO 11 CONTINUAÇÃO
ARQUITETURA DE COMPUTADORES EXERCICIO 11 CONTINUAÇÃO CALL FACT CL = 3 SP = X PUSH CX LIFO X-24 PUSH AX X-22 MOV CH,1 CH = 1 X-20 X-18 X-16 CMP CL,CH FC = X-14 X-12 JNC DESVIO X-10 SUB CL,1 CL = X-8 X-6 X-4 X-2 X

39 EXERCICIO 11 CONTINUAÇÃO
ARQUITETURA DE COMPUTADORES EXERCICIO 11 CONTINUAÇÃO CALL FACT CL = SP = PUSH CX PUSH AX LIFO MOV CH,1 CH = 1 X-24 X-22 X-20 CMP CL,CH FC = X-18 X-16 X-14 JNC DESVIO X-12 SUB CL,1 CL = X-10 X-8 X-6 X-4 X-2 X

40 EXERCICIO 11 CONTINUAÇÃO
ARQUITETURA DE COMPUTADORES EXERCICIO 11 CONTINUAÇÃO CALL FACT CL = SP = PUSH CX PUSH AX LIFO MOV CH,1 CH = 1 X-24 X-22 X-20 CMP CL,CH FC = X-18 X-16 X-14 JNC DESVIO X-12 SUB CL,1 CL = X-10 X-8 X-6 X-4 X-2 X

41 EXERCICIO 11 CONTINUAÇÃO
ARQUITETURA DE COMPUTADORES EXERCICIO 11 CONTINUAÇÃO CALL FACT CL = SP = PUSH CX PUSH AX LIFO MOV CH,1 CH= 1 X-24 X-22 X-20 CMP CL,CH FC = X-18 X-16 X-14 JNC DESVIO X-12 MOV DL,1 DL = 1 X-10 X-8 X-6 POP AX X-4 POP CX X-2 RET X

42 EXERCICIO 11 CONTINUAÇÃO
ARQUITETURA DE COMPUTADORES EXERCICIO 11 CONTINUAÇÃO ADD CL,1 CL = SP = MOV AL,CL AL = LIFO X-24 MUL DL AL = X-22 X-20 MOVDL,AL DL = X-18 X-16 X-14 POP AX X-12 POP CX CL = X-10 X-8 X-6 RET X-4 X-2 X

43 EXERCICIO 11 CONTINUAÇÃO
ARQUITETURA DE COMPUTADORES EXERCICIO 11 CONTINUAÇÃO ADD CL,1 CL = SP = MOV AL,CL AL = LIFO X-24 MUL DL AL = X-22 X-20 MOVDL,AL DL = X-18 X-16 X-14 POP AX X-12 POP CX CL = X-10 X-8 X-6 RET X-4 X-2 X

44 EXERCICIO 11 CONTINUAÇÃO
ARQUITETURA DE COMPUTADORES EXERCICIO 11 CONTINUAÇÃO ADD CL,1 CL = SP = MOV AL,CL AL = LIFO X-24 MUL DL AL = X-22 X-20 MOVDL,AL DL = X-18 X-16 X-14 POP AX X-12 POP CX CL = X-10 X-8 X-6 RET X-4 X-2 X


Carregar ppt "ARQUITETURA DE COMPUTADORES SOFTWARE PROGRAMA SEQUENCIA DE INSTRUÇÕES"

Apresentações semelhantes


Anúncios Google