Arquitectura de Computadores

Documentos relacionados
Arquitetura de Um Processador I

Conjunto de Instruções (ISA) II

Conjunto de Instruções (ISA) I

Arquitectura de Computadores

Prova de Arquitectura de Computadores (21010) Data: 5 de Fevereiro de 2009

p-fólio Arquitectura de Computadores U.C de julho de 2018 INSTRUÇÕES

Prova de Arquitectura de Computadores (21010) Data: 18 de Junho de 2010

Arquitectura de Computadores

Arquitectura de Computadores

Prova de Arquitectura de Computadores (21010) Data: 12 de Fevereiro de 2010

Arquitectura de Computadores

Introdução à Arquitetura de Computadores

Grupo I (5 valores) CD AB

Introdução à Arquitetura de Computadores

ANEXO de Arquitectura de Computadores Informação sobre o Processador P3 Abril 2005

Arquitectura de Computadores

Arquitectura de Computadores 2007/2008 2º Semestre 1º Teste (A) - 30/04/2008. Folha de Respostas

Arquitectura de Computadores

Arquitectura de Computadores

Arquitetura de Um Processador III

Manual do Simulador do Processador P3

Arquitectura de Computadores 2011/2012 2º Semestre 1º Teste (A) - 11/04/2012

Arquitectura de Computadores (ACom)

Arquitectura de Computadores 2007/2008 2º Semestre Repescagem 1º Teste - 03/07/2008

INSTITUTO SUPERIOR TÉCNICO

INSTITUTO SUPERIOR TÉCNICO. Arquitectura de Computadores (ACom)

Manual do Simulador do Processador P3

Arquitectura de Computadores

Aula 14 Funcionamento de Processadores (Visão específica)

Programação de Microprocessadores. Programação de Microprocessadores SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

As 5 partes fundamentais. Linguagem de Programação Pinagem Características Elétricas Ambiente de Desenvolvimento Integrado - IDE

Introdução à programação em linguagem assembly

7. PROGRAMANDO O MICROCONTROLADOR. Microcontroladores - Prof: Demantova

CONJUNTO DE INSTRUÇÕES

Conjunto de instruções. O Conjunto de Instruções. Conjunto de instruções. Instruções típicas. Instruções típicas. Instruções típicas

INSTITUTO SUPERIOR TÉCNICO. Arquitectura de Computadores (ACom)

Instruções Assembly x Código de máquina Microprocessador Didático

MICROPROCESSADORES 2º TESTE - A

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

Sistemas Microprocessados. sato<at>utfpr<dot>edu<dot>br

Introdução à Arquitetura de Computadores. Coletânea de Problemas. Outubro 2014

Arquitetura de Computadores Conceitos Fundamentais. Graduação em Engenharia Elétrica - UFPR Prof. Carlos Marcelo Pedroso 2016

Arquitectura de Computadores (ACom)

Introdução à Arquitetura de Computadores. Coletânea de Problemas. Janeiro 2014

Estrutura do tema ISA do IA-32

Organização Funcional

A arquitectura IA32. A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador.

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

Prof. Adilson Gonzaga

Arquitectura de Computadores. Guia de Laboratório 2010 / 2011

Manual do PEPE. 1 Introdução. 2 Ligações do módulo PEPE

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I

Programação ao nível da máquina. Operações lógicas e aritméticas

x86 arquitetura e instruções básicas

Sistemas Digitais (SD) Unidade Lógica e Aritmética

Guia de Laboratório 2013 / 2014

Microprocessadores. Arquitectura Geral de Microprocessador

7. A pilha e subrotinas

Nível do Conjunto de Instruções Prof. Edson Pedro Ferlin

SEL-614 MICROPROCESSADORES E APLICAÇÕES. Adilson Gonzaga

INSTITUTO SUPERIOR DE ENGENHARIA DE LISBOA

Arquitectura de Computadores. Dicas e Truques do Assembly do P3

Neander - características

Circuitos Aritméticos II

Transcrição:

Arquitectura de Computadores Geração do Código Objecto (10.7 e 10.8) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 30 de Março, 2009 José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 1 / 13

Sumário da Aula formato das instruções Assembly do P3 instruções de 0, 1 e 2 operandos instruções de salto José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 2 / 13

Instruções do P3 por Classes Aritméticas Lógicas Deslocamento Controlo Transferência Genéricas NEG COM SHR BR MOV NOP INC AND SHL BR.cond MVBH ENI DEC OR SHRA JMP MVBL DSI ADD XOR SHLA JMP.cond XCH STC ADDC TEST ROR CALL PUSH CLC SUB ROL CALL.cond POP CMC SUBB RORC RET CMP ROLC RETN MUL RTI DIV INT José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 3 / 13

Instruções do P3 por Número de Operandos Zero Operandos Um Operando Dois Operandos Controlo NOP NEG CMP JMP ENI INC ADD JMP.cond DSI DEC ADDC CALL STC COM SUB CALL.cond CLC PUSH SUBB BR CMC POP MUL BR.cond RET SHR DIV RTI SHL TEST INT SHRA AND RETN SHLA OR ROR XOR ROL MOV RORC ROLC MVBH MVBL XCH José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 4 / 13

Formato Geral das Instruções do P3 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 OPCODE Descrição dos Operandos José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 5 / 13

Formato Geral das Instruções do P3 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 OPCODE Descrição dos Operandos W : Operando imediato José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 5 / 13

Códigos de Operação das Instruções 0-op Código 1-op Código 2-op Código Ctrl Código NOP 000000 NEG 010000 CMP 100000 JMP 110000 ENI 000001 INC 010001 ADD 100001 JMP.cond 110001 DSI 000010 DEC 010010 ADDC 100010 CALL 110010 STC 000011 COM 010011 SUB 100011 CALL.cond 110011 CLC 000100 PUSH 010100 SUBB 100100 BR 111000 CMC 000101 POP 010101 MUL 100101 BR.cond 111001 RET 000110 SHR 011000 DIV 100110 RTI 000111 SHL 011001 TEST 100111 INT 001000 SHRA 011010 AND 101000 RETN 001001 SHLA 011011 OR 101001 ROR 011100 XOR 101010 ROL 011101 MOV 101011 RORC 011110 MVBH 101100 ROLC 011111 MVBL 101101 XCH 101110 José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 6 / 13

Instruções Sem Operandos NOP, ENI, DSI, STC, CLC, CMC, RET e RTI José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 7 / 13

Instruções Sem Operandos NOP, ENI, DSI, STC, CLC, CMC, RET e RTI 0 0 0 X X X José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 7 / 13

Instruções Sem Operandos NOP, ENI, DSI, STC, CLC, CMC, RET e RTI 0 0 0 X X X INT e RETN 0 0 1 X X X ARG José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 7 / 13

Instruções com Um Operando NEG, INC, DEC, COM, PUSH e POP 0 1 0 X X X W? M IR1 José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 8 / 13

Instruções com Um Operando NEG, INC, DEC, COM, PUSH e POP 0 1 0 X X X W? M IR1 Codificação do modo de endereçamento: M Endereçamento Operação 00 Por registo op = RX 01 Por registo indirecto op = M[RX] 10 Imediato op = W 11 Indexado, directo, relativo ou baseado op = M[RX+W] Nota: SP 1110 e PC 1111 José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 8 / 13

Instruções de Deslocamento SHR, SHL, SHRA, SHLA, ROR, ROL, RORC e ROLC 0 1 1 X X X W? PAR M IR1 José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 9 / 13

Instruções com Dois Operandos CMP, ADD, ADDC, SUB, SUBB, MUL, DIV, TEST, AND, OR, XOR, MOV, MVBL, MVBH e XCH 1 0 X X X X S IR2 M IR1 W? José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 10 / 13

Instruções de Controlo JMP, JMP.cond, CALL e CALL.cond 1 1 0 X X X COND M IR1 W? José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 11 / 13

Instruções de Controlo JMP, JMP.cond, CALL e CALL.cond 1 1 0 X X X COND M IR1 W? BR e BR.cond 1 1 1 X X X COND OFFSET José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 11 / 13

Código da Condição de Salto Condição Mnemónica Código Zero Z 0000 Não-zero NZ 0001 Transporte C 0010 Não-transporte NC 0011 Negativo N 0100 Não-negativo NN 0101 Excesso O 0110 Não-excesso NO 0111 Positivo P 1000 Não-positivo NP 1001 Interrupção I 1010 Não-interrupção NI 1011 José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 12 / 13

Exemplo FIM FRASE EQU 0 MAX FRASE EQU 100h JANELA TEXTO EQU FFFEh ORIG 8000h Frase TAB MAX FRASE ORIG 0A00h ; Escreve: Envia para janela de texto um conjunto de caracteres (frase) ; Entradas: M[Frase] - início da frase ; Saídas: N~ao tem. ; Efeitos: Altera os registos R1 e R4. Escreve: MOV R4, Frase ; Inicializa apontador para frase Prox: MOV R1, M[R4] ; L^e caracter CMP R1, FIM FRASE ; Fim da frase? BR.Z FimEsc ; Termina se sim MOV M[JANELA TEXTO], R1 ; Escreve na janela de texto INC R4 ; Avança apontador BR Prox ; Trata próxima FimEsc: RET José Monteiro (DEI / IST) Arquitectura de Computadores 2009-03-30 13 / 13