1/43
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
O que é o ISA em um processador?
É a interface entre o software e o hardware, formada por um conjunto de regras e especificações que define como o software comunica-se com o processador.
O que o ISA determina em um processador?
Quais instruções o processador pode executar
Como essas instruções são codificadas
Como os programas interagem com os recursos da CPU
O que é o Conjunto de Instruções dentro do ISA?
Lista das operações permitidas pela CPU, como soma, subtração, multiplicação, load, store, branch, etc.
O que são Modos de Endereçamento?
Métodos que definem como acessar os operandos, como:
Imediato (constante)
Direto (memória)
Registrador
Indexado ou relativo
O que são Registos Disponíveis no ISA?
São os registros visíveis ao programador, como registradores de uso geral, de controle e especiais (ex: PC, IR, ACC).
O que é o Formato das Instruções?
Define como uma instrução é codificada em binário:
Inclui o opcode (código da operação)
E os operandos (endereços ou valores)
O que define o Modo de Operação do Processador?
Define se o processador está em:
Modo privilegiado (SO)
Modo usuário (aplicações)
E como são tratadas interrupções e exceções
Por que o ISA é importante para programadores?
Ele abstrai os detalhes de implementação do hardware, permitindo ao programador escrever código Assembly sem conhecer a microarquitetura
O que o ISA descreve?
Todas as instruções que a CPU pode executar
Os registradores acessíveis
Como a CPU interage com a memória
Como trata interrupções
Qual é o compromisso envolvido no projeto de um ISA?
Um equilíbrio entre:
Espaço físico no chip
Consumo de energia
Facilidade de programação
Desempenho do sistema
Por que o ISA é importante para a compatibilidade entre processadores?
Permite que diferentes processadores da mesma família executem o mesmo código de máquina, garantindo portabilidade binária.
O que é o Instruction Set de um processador?
É o conjunto de operações que o processador pode executar, disponível ao programador para controle direto da CPU.
Qual o impacto do Instruction Set no software?
Ele tem um papel fundamental no desempenho do software, pois define como o código é executado pelo processador, afetando diretamente eficiência e otimização.
O que é um mnemônico em Assembly?
É uma palavra simbólica (como ADD
, MOV
, JMP
) que representa uma instrução binária de máquina, facilitando a leitura e a escrita por humanos.
Como as instruções em Assembly são convertidas em código de máquina?
Por meio de um compilador ou assembler, que traduza os mnemônicos para os opcodes binários que o hardware entende.
O Instruction Set faz parte de qual estrutura maior?
Do ISA (Instruction Set Architecture), que inclui também os modos de endereçamento, formato das instruções, registradores disponíveis e modos de operação da CPU.
Quais são os principais tipos de instruções em um processador?
Cálculo – executa operações aritméticas/lógicas na ALU
Acesso a Dados – transfere dados entre memória e registos
Saltos (Jumps) – altera o fluxo de execução do programa
Controlo – modifica o estado interno da CPU
O que são instruções de salto e por que são importantes?
São instruções que alteram o endereço da próxima instrução, quebrando a execução sequencial. Usadas em loops, condições, e funções.
O que fazem as instruções de controlo?
Elas alteram o estado interno do processador, como ativar modo privilegiado, tratar interrupções ou ajustar flags de status.
O que é o Opcode em uma instrução?
É o código da operação — uma sequência binária que indica qual ação a CPU deve realizar
Quais são os 4 principais tipos de arquiteturas ISA?
Arquitetura em Pilha – usa uma pilha LIFO para manipular dados (ex: PUSH
, POP
)
Baseada em Acumulador – sempre envolve o acumulador como um dos operandos
Load/Store (Registo-Registo) – apenas instruções LOAD
e STORE
acessam a memória, outras usam apenas registradores
Registo-Memória – a ALU pode operar diretamente sobre dados da memória
O que influencia a escolha da arquitetura ISA?
O compromisso entre desempenho desejado, custo final e complexidade do hardware/software.
Quais são os 5 principais aspectos do projeto de um ISA?
Modelo de Memória
Tipos de Dados
Formato das Instruções
Tipos de Instruções
Modos de Endereçamento
O que é o modelo de memória?
Define como dados e instruções são organizados na memória, incluindo alinhamento e separação (ou não) entre as áreas.
Quais são os principais tipos de dados suportados?
Inteiros
Ponto flutuante
Caracteres
Lógicos (booleanos)
Quais são os modos de endereçamento comuns?
Imediato (valor embutido)
Direto (endereço explícito)
Indireto (via ponteiro)
Indexado
Por registrador
O que caracteriza uma arquitetura CISC (Complex Instruction Set Computing)?
Instruções complexas e numerosas
Executam operações avançadas em poucos ciclos
Descodificação mais lenta e complexa
Ex: x86 (Intel, AMD)
O que caracteriza uma arquitetura RISC (Reduced Instruction Set Computing)?
Instruções simples, uniformes e rápidas
Requerem mais instruções para tarefas complexas
Otimizadas para pipelining e paralelismo
Ex: ARM, RISC-V, MIPS
Como o ISA impacta o desempenho?
Arquiteturas RISC favorecem execução rápida e eficiente
Arquiteturas CISC oferecem instruções ricas e versáteis, úteis para aplicações complexas
Por que arquiteturas RISC são comuns em dispositivos móveis?
Oferecem alta eficiência energética
Executam tarefas com baixo consumo de bateria
Ex: ARM em smartphones, tablets e IoT
Por que arquiteturas CISC são usadas em desktops e servidores?
Capazes de executar cargas complexas de trabalho
Otimizadas para desempenho geral, mesmo com maior consumo energético
O que caracteriza a arquitetura CISC?
Instruções complexas e variadas
Possibilidade de múltiplos acessos à memória numa só instrução
Instruções que combinam acesso à memória + operação aritmética
Usa microcódigo (ex: x86)
Quais são as principais vantagens da arquitetura CISC?
Alta compatibilidade de código com versões antigas
Desenvolvimento de software mais simples
Programas mais compactos
Chips mais fáceis de programar
Exemplos: Intel 8086, Motorola 68k
Quais são as desvantagens da arquitetura CISC?
Instruções de durações variáveis, dificultando pipeline e paralelismo
Pouca utilização real do conjunto completo de instruções (apenas ~20% são usadas frequentemente)
Maior consumo de energia
Maior complexidade de hardware para decodificação
Quais são as principais características da arquitetura RISC?
Poucas instruções, simples e uniformes
Tamanho fixo das instruções
Executa uma instrução por ciclo de clock
Usa muitos registradores, evitando acessos à RAM
Ideal para pipelining
Como o acesso à memória é feito em RISC?
Apenas pelas instruções LOAD e STORE
A ALU trabalha apenas com registradores
No máximo um acesso à memória por instrução
Qual é o histórico da arquitetura RISC?
Surgiu nos anos 70 e 80 (IBM 801, Stanford MIPS, Berkeley RISC 1 e 2)
Popularizada em dispositivos como iPod, iPhone, iPad
Muito usada em PowerPC, ARM
Quais são as vantagens da arquitetura RISC?
Menor custo e maior eficiência
Chips menores e mais rápidos
Baixo consumo de energia
Quais são as desvantagens da arquitetura RISC?
Pouca adoção no desktop devido ao domínio da Intel (CISC)
O avanço de hardware permite que instruções CISC também sejam rápidas, reduzindo a vantagem do RISC
Ainda faz sentido distinguir claramente entre RISC e CISC hoje em dia?
Não com clareza absoluta. As arquiteturas convergiram e muitas CPUs modernas combinam elementos de ambas.
O que as arquiteturas CISC modernas (como x86) adotaram do RISC?
Pipelining
Execução de múltiplas instruções por ciclo
Implementações híbridas para aumentar desempenho e eficiência
O que as arquiteturas RISC modernas (como ARM) incorporaram do CISC?
Instruções complexas para reduzir ciclos
Hardware mais sofisticado
Suporte a microarquiteturas avançadas (cache, branch prediction, execução fora de ordem)