Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Interrupçoes em Assembly, Manuais, Projetos, Pesquisas de Programação Assembly

Este documento se refere a funçoes de diversas interrupçoes em Assembly, como: INT 0x10 (monitor), INT 0x16 (teclado), INT 0x13 (Disco), etc..

Tipologia: Manuais, Projetos, Pesquisas

2021

Compartilhado em 10/07/2021

bft-corporations
bft-corporations 🇧🇷

2

(1)

2 documentos

1 / 19

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Arquitetura de Computadores Prof. Ronaldo Hüsemann
Uso de interrupções de
BIOS/DOS
Prof. Ronaldo Hüsemann
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13

Pré-visualização parcial do texto

Baixe Interrupçoes em Assembly e outras Manuais, Projetos, Pesquisas em PDF para Programação Assembly, somente na Docsity!

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

Uso de interrupções de

BIOS/DOS

Prof. Ronaldo Hüsemann

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

Mapa de Memória

  • Espaço total: 1M• Espaço para

programa: 640K

Tabela

de

Vetores

de

Interrup

ção

Tabela

de

Vetores

de Dados^ Interrupção

da

BIOS e do DOS Dados

da

BIOS e do

DOS

Processador deBIOS (volátil)^ BIOS (volátil) Comandos

Residente

Processador de Comandos

Residente

DOS

e

drivers

de

dispositivos DOS

e

drivers

de

Área para dispositivos

o

Áreaprograma

para

o

programa Memória

de

Vídeo

(Parte

Gráfica)

Memória

de

Vídeo

(Parte

Gráfica)

Memória

de

Vídeo

(Texto

e

Gráfica)

Memória

de

Vídeo

(Texto

e

Gráfica) BIOSReservado^ Reservado

(ROM) BIOS

(ROM)

FFFFFhF0000hC0000hB8000hA0000h 00400h 00000h

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

Interrupções de Software

  • Disparadas pelo programa do usuário• Instrução INT própria para isso
    • INT número
      • Número tem 8 bits (de 0 a FFh)
        • Exemplo: INT 3

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

Interrupções Mais Comuns

  • INT 10h – Serviço de vídeo da BIOS• INT 16h – Serviço de teclado da BIOS• INT 17h – Serviço de impressora da BIOS• INT 1Ah – Relógio• INT 1Ch – Cronômetro• INT 21h – Funções do MS-DOS

Arquitetura de Computadores – Prof. Ronaldo Hüsemann Uso de interrupção

  • O uso de interrupções de software permite• uma operação com funções como uma

biblioteca de baixo nível

  • Seleciona-se inicialmente o serviço

desejado, que é informado porregistradores gerais como AX, AH ou AL

  • Chama-se então a interrupção por INT X• No retorna basta ler os registradores de

saída definidos

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

INT 16h

  • Leitura de teclado
    • Serviço 0:

Espera caracter ser pressionadoRegistrador AH sinaliza serviçoRetorna em AL caracter lido

  • Exemplo:

MOV AH, 0INT 16H

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

INT 16h

-^

Leitura de teclado– Serviço 2: Verifica estado do teclado

Registrador AH sinaliza serviçoRetorna em AL o estado atual

bit condição 7

Insert 6

Caps lock 5

Num lock 4

Scroll lock 3

Alt 2

Ctrl 1

Shift esq. 0

Shift dir.

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

INT 21h

  • Serviço 1:

Leitura de caracter com ecoRegistrador AH sinaliza serviçoRetorna em AL caracter lido

  • Exemplo:

MOV AH, 1INT 21H

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

INT 21h

  • Serviço 11:

Verifica estado do tecladoRegistrador AH sinaliza serviço

Se AL = 255 há caracterSe AL = 0 não há caracter

  • Exemplo:

MOV AH, 0BhINT 21H

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

Mouse

  • Funções básicas de leitura e configuração

também disponíveis através deinterrupções de BIOS;

  • Interrupção mais usada INT 33h

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

INT 33h

  • Lê a posição do mouse• Serviço 3:
    • AX = 03h– Chamar INT 33h
      • Retorno:
        • CX = coordenada X– DX = coordenada Y– BX =>
          • bit 0 = botão esquerdo• bit 1 = botão direito• bit 2 = botão do meio

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

INT 33h

  • Muda a posição do mouse• Serviço 4:
    • AX = 04h– CX = coordenada X– DX = coordenada Y– Chamar INT 33h

Arquitetura de Computadores – Prof. Ronaldo Hüsemann

INT 33h

  • Restringe a posição do mouse• Serviço 8:
    • AX = 08h– CX = mínimo valor da coordenada Y– DX = máximo valor da coordenada Y– Chamar INT 33h