FATEC-SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 1 Para facilitar o entendimento das rotinas escritas em assembly, apresentadas em aula, estudar as seguintes instruções da linguagem assembly: ADD SUB MOV MUL INC DEC CMP JMP (Instrução JUMP e suas variações condicionais: JE, JZ, JAE, JNZ ) LOOP XOR OR AND SHL SHR OFFSET POP PUSH CLI STI CLD STD CALL INT RET IRET F A T E C - S P - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG.2 ARQUITETURA DA CPU 8086 DA INTEL E S T E M I C R O P R O C E S S A D O R POSSUI DOIS CHIP, Q U E T R A B A L H A M A S S Í N C R O N A M E N T E . : ESQUEMA DO PROCESSADOR: PROCESSADORES NO M E S M O FATEC - SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 3 BIU - UNID. DE INTERFACE DE BARRAMENTO ( BUS INTERFACE UNIT) EU - UNIDADE DE EXECUÇÃO A BIU: PROPORCIONA A COMUNICAÇÃO COM O AMBIENTE EXTERIOR À CPU, ATRAVÉS DE 16 LINHAS DE DADOS BIDIRECIONAIS E DE 20 LINHAS DE ENDEREÇAMENTO, FUNÇÕES : - BUSCA DA INSTRUÇÃO - ARRANJO SEQÜENCIAL DAS INSTRUÇÕES NO REG. DE FILA - BUSCA E ARMAZENAMENTO DOS OPERANDOS - REALOCAÇÃO DE ENDEREÇOS - CONTROLE DO BARRAMENTO PARA ISSO POSSUI UM CONJUNTO DE REGISTRADORES DE SEGMENTOS, DE COMUNICAÇÃO INTERNA, INDICADOR DE INSTRUÇÕES (IP), REGISTRO DE FILA, SOMADOR DE ENDEREÇOS E LÓGICA DE CONTROLE DE BARRAMENTO. QUANDO OCIOSA A BIU REALIZA PRÉ-BUSCA DE INSTRUÇÕES NA MEMÓRIA, ARMAZENANDO-AS NO REGISTRO DE FILA. A EU: REALIZA A EXECUÇÃO DAS INSTRUÇÕES PROPRIAMENTE DITA. FUNÇÕES : - BUSCA DAS INSTRUÇÕES NO REG. DE FILA DA BIU - DECODIFICAÇÃO DA INSTRUÇÃO - GERA ENDEREÇOS DE OPERANDOS À BIU - REQUISITA LEITURA OU GRAVAÇÃO NA MEMÓRIA/PERIF. - PROCESSA A OPERAÇÃO ESPECIFICADA PELA INSTRUÇÃO - ALTERA OS SINALIZADORES DE ESTADO, CONFORME O RESULTADO DA INSTRUÇÃO. PARA REALIZAR ESSAS FUNÇÕES, É COMPOSTA POR: ULA, REGISTRADOR DE FLAGS DE ESTADO E CONTROLE (SINALIZADORES), OITO REGISTRADORES GERAIS, REGISTRADORES TEMPORÁRIOS E LÓGICA DE CONTROLE DE FILA. FATEC — SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG.4 OS REGISTRADORES DO 8086 POSSUI 14 REGISTRADORES, COM 16 BITS CADA, DIVIDIDOS EM 4 GRUPOS : 1 - REGISTRADORES GERAIS 2 - REGISTRADORES DE SEGMENTO 3 - REGISTRADORES PONTEIROS E ÍNDICES 4 - REGISTRADORES PONTEIROS DE INSTRUÇÕES E DE ESTADO 1) REGISTRADORES GERAIS: SÃO OS REGISTRADORES A X , BX, CX e DX QUE PODEM SER USADOS COMO 2 REGISTRADORES DE 8 BITS CADA. AX AH AL BX BH BL CX CH CL DX DH DL bits 15 87 EXEMPLO DE UTILIZAÇÃO: AX : ACUMULADOR (OPERAÇÕES ARITMÉTICAS), CONTER CÓDIGO DE SERVIÇOS. BX : BASE DO ENDEREÇO DE MATRIZ CX : CONTADOR (LOOPING) D X : DADOS, RESTO DE DIVISÃO, DESLOCAMENTOS NO SEGTO. DE DADOS, ENDER. PORTA DE SAÍDA. FATEC — SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG.5 2) REGISTRADORES DE SEGMENTO : UM PROGRAMA EM SISTEMAS QUE UTILIZAM O PROCESSADOR 8086 PODE ALOCAR ATÉ 4 BLOCOS DE MEMÓRIA, CHAMADOS SEGMENTOS, CUJOS ENDEREÇOS INICIAIS SÃO ARMAZENADOS NOS REGISTRADORES DE SEGMENTO CORRESPONDENTES: CS, DS, ES, e SS. 2.1) SEGMENTO DE CÓDIGO UTILIZADO PARA ARMAZENAR AS INSTRUÇÕES DO PROGRAMA. ESTE SEGMENTO TEM SEU ENDEREÇO INICIAL NO REGISTRADOR CS. DESLOCAMENTOS DENTRO DO SEGMENTO DE CÓDIGO SÃO ARMAZENADOS NO REGISTRADOR IP (INSTRUCTION POINTER), CUJO VALOR É AUTOMATICAMENTE MODIFICADO PELO SISTEMA. 2.2) SEGMENTO DE DADOS UTILIZADO PARA ARMAZENAR OS DADOS UTILIZADOS PELO PROGRAMA. SEU ENDEREÇO INICIAL É ARMAZENADO NO REGISTRADOR DS. DESLOCAMENTOS NO SEGMENTO DE DADOS SÃO AR MAZENADOS NOS REGISTRADORES SI (SOURCE INDEX) E DI (DESTINATION INDEX), OU OUTROS. 2.3) SEGMENTO EXTRA É UTILIZADO COMO SEGMENTO EXTRA DE DADOS. SEU ENDEREÇO INICIAL É ARMAZENADO NO REGISTRADOR ES. DESLOCAMENTOS ARMAZENADOS EM DI. 2.4) SEGMENTO DE PILHA UTILIZADO PARA PERMITIR QUE UM PROGRAMA EM EXECUÇÃO CHAME OUTRO PROGRAMA E RETOME A EXECUÇÃO NO PONTO EM QUE PAROU, QUANDO RECEBER NOVAMENTE O CONTROLE. OS DADOS NO SEGMENTO DE PILHA SÃO ACESSADOS PELA TÉCNICA L.I.F.O. O ENDEREÇO INICIAL DO SEGMENTO DE PILHA É ARMAZENADO NO REGISTRADOR SS. DESLOCAMENTOS NO SEGMENTO DE PILHA SÃO ARMAZENADOS EM SP (STACK POINTER) E BP (BASE POINTER). O VALOR DE SP É AUTOMATICAMENTE MODIFICADO PELO SISTEMA QUANDO SE INSERE OU RETIRA DADOS DA PILHA. FATEC — SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG.6 EXERCÍCIOS: 1. SOLICITE OS SERVIÇOS ABAIXO DO SISTEMA OPERACIONAL, ATRAVÉS DA INTERRUPÇÃO 21h. A) SERVIÇO 2B : "SET DATE". A H = 2Bh CX = ANO (ENTRE 1980 E 2099) DH = MÊS (ENTRE 01 E 12) DL = DIA (ENTRE 01 E 31) B) SERVIÇO 02 (CHARACTER OUTPUT) AH = 02 DL = CARACTER A EXIBIR (8 BITS) C) SERVIÇO 09 (DISPLAY STRING) A H = 09 DS:DX = BASE:DESLOC. DO INÍCIO DO STRING (TERMINA C/ $) D) SERVÇO 39h (CREATE SUB-DIRECTORY) A H = 39h DS:DX = BASE:DESLOC. DO PATH/NOME DO SUB-DIRETÓRIO (TERMINA C/ 00h) E) SERVIÇO 3Ah (DELETE SUB-DIRECTORY) A H = 3 Ah DS:DX = BASE:DESLOC. DO PATH/NOME DO SUB-DIRETÓRIO (TERMINA Cl 00h) 2. EXECUTE O MANIPULADOR DA INT 10h (BIOS), SERVIÇO 0B E SUB-FUNÇÃO 00 (DETERMINA A COR DA BORDA DO VÍDEO) AH = 0Bh BH = 00 BL = CÓDIGO DA COR FATEC — SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 7 ESQUEMA DE UM PROGRAMA NA MEMÓRIA ENDEREÇAMENTO PADRÃO USADO PELO S. O. PARA PROGRAMAS EXE, CARREGADOS NA MEMÓRIA PARA EXECUÇÃO: SE NÃO HOUVER O SEGMENTO DE PILHA, O VALOR DE SS É IGUAL AO DE CS E SP É ZERO. O POSICIONAMENTO (ENDEREÇOS) DOS REGISTRADORES DS E ES ABAIXO DECORREM DE INSTRUÇÕES NO PRÓPRIO PROGRAMA, QUE INDICAM O PONTO DO PROGRAMA QUE DEVEM ENDEREÇAR. FATEC — SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG.8 COMO O TAMANHO DOS REGISTRADORES É 16 BITS E O TAMANHO DO BARRAMENTO DE ENDEREÇOS (ENDEREÇO FÍSICO) É 20 BITS, UM PROGRAMA SEMPRE É CARREGADO EM ENDEREÇO DE PARÁGRAFO, POSSIBILITANDO TRUNCAR O DÍGITO (4 BITS) MAIS À DIREITA, E RECUPERÁLO NO MOMENTO DA FORMAÇÃO DO ENDEREÇO FÍSICO. OS SEGMENTOS NÃO SÃO NECESSARIAMENTE SEPARADOS, PODENDO OCORRER SOBREPOSIÇÃO. OS ENDEREÇOS CONTIDOS NOS REGISTRADORES DE SEGMENTO, SÃO A CRESCIDOS DE 4 BITS PARA TORNAR O ENDEREÇO FÍSICO RESULTANTE C O M 20 BITS, O QUE PERMITE ENDEREÇAR UM TOTAL DE 1MB DE MEMÓRIA RAM. O ENDEREÇO FÍSICO DE MEMÓRIA APONTADO PELA CPU É FORMADO A PARTIR DO ENDEREÇO LÓGICO ( VALORES DOS REGISTRADORES DE SEGMENTO (BASE) E DOS REGISTRADORES PONTEIROS/ÍNDICES (DESLOCAMENTO) ASSOCIADOS AO SEGMENTO. ENDEREÇO FÍSICO = BASE * 10H + DESLOCAMENTO. base desloc ENDEREÇO LÓGICO(l 6 BITS): ENDEREÇO FÍSICO : 70123 7000 : 0123 O TAMANHO MÁXIMO DE UM SEGMENTO, UTILIZANDO REGISTRADORES DE DESLOCAMENTO DE 16 BITS, É 64 KB. 3) REGISTRADORES PONTEIROS E ÍNDICES OS PONTEIROS SP e BP SÃO UTILIZADOS PARA ARMAZENAR DESLOCAMENTOS NO SEGMENTO DE PILHA E OS REGISTRADORES ÍNDICES SI e DI PARA ARMAZENAR DESLOCAMENTOS NOS SEGMENTOS DE DADOS. SP - (STACK POINTER) PONTEIRO DE PILHA, APONTA PARA A POSIÇÃO DO TOPO DA PILHA, SENDO SEU VALOR AUTOMATICAMENTE MODIFICADO QUANDO INSERIMOS (PUSH) OU RETIRAMOS (POP) DADOS DA PILHA. BP - (BASE POINTER) PONTEIRO BASE, UTILIZADO PARA ACESSO DIRETO A ALGUMA POSIÇÃO DA PILHA (PASSAGEM DE PARÂMETROS ENTRE PROGRAMAS) FATEC - SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. EXEMPLO DE FUNCIONAMENTO DA PILHA A) CONFIGURAÇÃO INICIAL DA PILHA B) CONFIGURAÇÃO APÓS COLOCAR O VALOR A01F NA PILHA (PUSH) FATEC-SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 10 C) CONFIGURAÇÃO APÓS "RETIRADA" DE A01F DA PILHA CRESCIMENTO DA PILHA. SE A PILHA OCUPAR UM SEGMENTO DE MEMÓRIA, QUAIS VALORES DE SP INDICAM PILHA CHEIA E VAZIA ? OBSERVE QUE OS VALORES NUMÉRICOS SÃO ARMAZENADOS COM AS POSIÇÕES MAIS SIGNIFICATIVAS DO NÚMERO NOS ENDEREÇOS MAIORES E AS MENOS SIGNIFICATIVAS NOS ENDEREÇOS MENORES. SI - UTILIZADO COMO "ÍNDICE FONTE" QUE CONTÉM O DESLOCAMENTO DO OPERANDO FONTE NO SEGMENTO DE DADOS. DI - UTILIZADO COMO "ÍNDICE DE DESTINO" QUE CONTÉM O DESLOCAMENTO DO OPERANDO DESTINO NO SEGMENTO DE DADOS. FATEC - SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 11 4) REGISTRADORES PONTEIRO DE INSTRUÇÃO (IP) E DE ESTADO (FLAGS) IP - INSTRUCTION POINTER, UTILIZADO PARA CONTER O DESLOCAMENTO, NO SEGMENTO DE CÓDIGO, DA PRÓXIMA INSTRUÇÃO A SER EXECUTADA. REGISTRADOR DE FLAGS : REGISTRADOR DE 16 BITS, NOVE DOS QUAIS SÃO USADOS PARA INDICAR VÁRIAS CONDIÇÕES DURANTE A EXECUÇÃO DE UM PROGRAMA. OS BITS 0,2,4, 6,7 e 11 SÃO USADOS COMO FLAGS DE ESTADO QUE DENOTAM RESULTADOS DE OPERAÇÕES NO PROGRAMA. OS BITS 8 A 10 CONTÉM FLAGS DE CONTROLE E OS BITS 1,3,5 e 12 A 15 NÃO SÃO USADOS. 11 o 10 D 9 I 8 T 7 6 Z S 5 4 A 2 P 3 1 0 c T = TRAP: MODO PASSO A PASSO I = INTERRUPT-ENABLE : DESABILITA INTERRUPÇÕES MASCARÁVEIS. D = DIREÇÃO: 0: INCREMENTA SI/DI; 1: DECREMENTA SI/DI Z = ZERO: 1 SE OS OPERANDOS FOREM IGUAIS, 0 SE FOREM DIFERENTES C = CARRY: 1 SE RESULT. > 16 BITS OU NÚMERO NEGATIVO NA SUBTRAÇÃO NA COMPAR: 2 > I . , ZERO SE 2 . <= I . A= AUXILIAR: IGUAL CARRY, PARA 8 BITS. P= PARIDADE: 1 SE RESULT. DE OPERAÇÃO GERAR QTDE PAR DE BITS. S=SINAL: 1 SE RESULTADO FOR NEGATIVO, 0 SE POSITIVO. O=OVERFLOW: ESTOURO. a o o o FATEC-SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 12 POSIÇÕES DE MEMÓRIA RESERVADAS AO PROCESSADOR. PARA O FUNCIONAMENTO DOS PROCESSADORES DA FAMÍLIA 8086 ALGUMAS POSIÇÕES DE MEMÓRIA SÃO RESERVADAS PARA USO ESPECÍFICO DA CPU. OS ENDEREÇOS DE FFFFO H ATÉ FFFFF H (ROM) SÃO RESERVADOS PARA CONTER UM 'JUMP' PARA A ROTINA DE 'INITIAL PROGRAM LOADING' (BOOT), QUE É EXECUTADA SEMPRE QUE O SISTEMA É LIGADO (POWER ON) OU FOR PRESSIONADA A TECLA 'RESET'. OS ENDEREÇOS 00000 H ATÉ 003FF H (TABELA DE VETORES DE INTERRUPÇÕES - TVI) SÃO RESERVADOS AO ATENDIMENTO DAS 256 POSSÍVEIS INTERRUPÇÕES DIRECIONADAS AO PROCESSADOR, NUMERADAS DE 00H a FFH. A TABELA DE VETORES DE INTERRUPÇÕES É DIVIDIDA EM 256 ENTRADAS DE 4 BYTES C A D A : 2 BYTES PARA A BASE E 2 BYTES PARA O DESLOCAMENTO A PARTIR DA BASE ESSES 2 VALORES FORMAM O ENDEREÇO LÓGICO DO MANIPULADOR DA INTERRUPÇÃO NA MEMÓRIA FATEC - SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 13 INTERRUPÇÕES: O TRABALHO EXECUTADO PELO NÚCLEO DE UM S. O. MULTIUSUÁRIO PODE SER REPRESENTADO EM UNIDADES FUNCIONAIS : INTERPRETADOR DE INTERRUPÇÕES : RECEBE O CONTROLE QUANDO UMA INTERRUPÇÃO (GERADA PELA CHAMADA AO SISTEMA - SYSTEM CALL) INDICA A SOLICITAÇÃO DE SERVIÇOS AO SISTEMA OPERACIONAL. APÓS EXECUTAR A TAREFA SOLICITADA O CONTROLE RETORNA AO PROGRAMA QUE ESTAVA EM EXECUÇÃO, ANTES DA SOLICITAÇÃO DE NTERRUPÇÃO. INTERRUPÇÃO: É UM SINAL ENVIADO PARA A UCP, INDICANDO QUE ALGUMA TAREFA DEVE SER EXECUTADA, PODENDO SER GERADA POR HARDWARE OU POR SOFTWARE. AS INTERRUPÇÕES POR HARDWARE SÃO CLASSIFICADAS E M : INTERNAS EXTERNAS - MASCARÁVEIS NÃO MASC. - DIRECIONADAS DIRETAMENTE À UCP GERADAS POR CONTROLADORAS DE PERIFÉRICOS E CANALIZADAS À UCP PELO PIC PODEM SER DESABILITADAS GERADAS POR EVENTOS GRAVES (PARIDADE, FALTA DE ENERGIA) AS INTERRUPÇÕES POR SOFTWARE ESTÃO CONTIDAS NO CÓDIGO DO PROGRAMA QUE AS GERA. FATEC — SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 14 E X : INT 21 (DOS / WIN) A ROTINA (MANIPULADOR DE INTERRUPÇÃO - INTERRUPT HANDLER) A SER ATIVADA É IDENTIFICADA A PARTIR DO NÚMERO DA INTERRUPÇÃO, QUE NOS PCs SÃO NUMERADAS DE 00h A FFh (256 INTERRUPÇÕES). NA MAIORIA DOS SISTEMAS MODERNOS, O DESVIO PARA A ROTINA MANIPULADORA DA INTERRUPÇÃO É FEITO A PARTIR DE UMA TABELA DE VETORES DE INTERRUPÇÕES QUE CONTÉM O ENDEREÇO LÓGICO DE MEMÓRIA ONDE SE ENCONTRA O MANIPULADOR. NESSE CASO, O NÚMERO DA ÍNTERRUPÇÃO SERVE COMO ÍNDICE PARA LOCALIZAR A ENTRADA DA TABELA QUE CONTÉM O ENDEREÇO DO MANIPULADOR. MANIPULADORES DE INTERRUPÇÕES: OS MANIPULADORES DE INTERRUPÇÕES SÃO ROTINAS PERTENCENTES AO BIOS (ROM), AO SISTEMA OPERACIONAL (RAM), OU DESENVOLVIDAS PELOS USUÁRIOS (RAM). TEM COMO CARACTERÍSTICAS: DEVOLVER OS REGISTRADORES COM OS MESMOS VALORES QUE RECEBEU; EM AMBIENTE MONOTAREFA NÃO DEVE CHAMAR O SISTEMA OPERACIONAL, DEVENDO INTERAGIR DIRETAMENTE COM O BIOS; COLOCAR O ENDEREÇO LÓGICO DE MEMÓRIA, ONDE FOI CARREGADO, NA TVI; TEMTNAR COM A INSTRUÇÃO IRET; RESERVAR A QTDE DE R A M QUE NECESSITA EM NÚMEROS DE PARÁGRAFOS. A INTERAÇÃO COM O HARDWARE, PARA UM APLICATIVO QUALQUER. PODE SER REPRESENTADA COMO ABAIXO: FATEC-SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 15 PROCESSO DE TRATAMENTO: QUANDO RECEBE UMA INTERRUPÇÃO A CPU : 1) DESABILITA O SISTEMA DE INTERRUPÇÕES 2) SALVA O CONTEÚDO DOS REGISTRADORES CS, IP e FLAGS NA PILHA. 3) CALCULA A POSIÇÃO DA ENTRADA NA TVI, QUE CONTÉM O ENDEREÇO DO MANIPULADOR DA INT (O NR. DA INT MULTIPLICADO POR 4, APONTA PARA O PRIMEIRO BYTE DA ENTRADA NA TVI) 4) CARREGA CS E IP COM O ENDEREÇO DO MANIPULADOR. 5) DESVIA PARA O ENDEREÇO DO MANIPULADOR. 6) QUANDO RETOMA O CONTROLE NOVAMENTE, RESTAURA OS VALORES SALVOS NA PILHA E RETOMA O TRABALHO INTERROMPIDO. EXERCÍCIOS: 1) UTILIZANDO O COMANDO G= DO DEBUG ACIONE O MANIPULADOR DA INT 19h. 2) ALTERE A TABELA DE VETORES DE INTERRUPÇÕES PARA: A) EXECUTAR O MANIPULADOR DA INT. 19h QUANDO FOR PRESSIONADA A TECLA "PRINT SCREEN" (INT 05h). B) EXECUTAR O ENDEREÇO DE RESET (FFFFOh) QUANDO FOR PRESSIONADA A TECLA "PRINT SCREEN" (INT 05h). FATEC - SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional HISTÓRICO DOS MICROPROCESSADORES DA INTEL 8086 (JUN/78) REGISTRADORES BARRA DE DADOS BARRA DE ENDEREÇOS 16 BITS 16 BITS 20 BITS 8088 (FEV/79) REGISTRADORES BARRA DE DADOS BARRA DE ENDEREÇOS 16 BITS 8 BITS = 20 BITS 80186 E 80188 (MAR/82) MESMA ARQUITETURA DOS ANTERIORES NOVAS INSTRUÇÕES 80286 (FEV/82) REGISTRADORES = 16 BITS BARRA DE DADOS = 16 BITS BARRA DE ENDEREÇOS = 24 BITS MODO REAL E MODO PROTEGIDO 80386 DX (OUT/85) REGISTRADORES = 32 BITS BARRA DE DADOS = 32 BITS BARRA DE ENDEREÇOS = 32 BITS MODO REAL E MODO PROTEGIDO 80386 SX (JUN/88) REGISTRADORES = 32 BITS BARRA DE DADOS = 16 BITS BARRA DE ENDEREÇOS = 32 BITS MODO REAL E MODO PROTEGIDO 80486 DX(ABR/89) REGISTRADORES = 32 BITS BARRA DE DADOS = 32 BITS BARRA DE ENDEREÇOS = 32 BITS CACHE DE MEMÓRIA EMBUTIDO NO PROCESSADOR FATEC — SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 17 CO-ROCESSADOR ARITMÉTICO 80486 SX (ABR/89) EXCLUI O CO-PROCESSADOR ARITMÉTICO PENTIUM (1992) REGISTRADORES BARRA DE DADOS BARRA DE ENDEREÇOS = 32 BITS = 64 BITS = 32 BITS MODO REAL X MODO PROTEGIDO MODO REAL : NESSE MODO DE ENDEREÇAMENTO, O ENDEREÇO REAL RESULTA DIRETAMENTE OS VALORES CONTIDOS NOS REGISTRADORES. MODO PROTEGIDO: O VALOR CONTIDO NO REGISTRADOR DE SEGMENTO (ENDEREÇO BASE) APONTA PARA UMA TABELA, CONTROLADA PELO HARDWARE OU S. O., QUE CONTÉM A BASE QUE FORMARÁ, JUNTAMENTE COM O VALOR DE DESLOCAMENTO, O ENDEREÇO FÍSICO. Ex.: FATEC - SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 18 PROGRAMA DEBUG: Principais comandos : D = Dump : lista posições de memória Ex.: 1) D 100:0 2) D CS:0 L B lista 128 bytes de memória, iniciando em 100:0 lista "b" bytes de memória, iniciando em CS:0 E = Enter : insere valores Hexa, nas posições de memória especificadas. Ex.: E 10:A EB 90 Insere EB90 na memória, iniciando em !0:A G= = Go : Executa a partir do endereço especificado. Ex.: G=43:20 Executa o conteúdo da posição 43:20 L = Load : carrega arquivos ou setores físicos do disco para a memória. Ex.: 1) L 100 2) L 0 15 7 Carrega arquivo especificado pelo comando N no deslocamento 100. Carrega, no deslocamento 0 do segmento apontado por DS, da unidade b: (1), iniciando no setor 5, 7 setores. N = Name : Nomeia arquivo (posterior carga) Ex.: N arquivo.txt Aponta para arqxiivo.txt R = Register : Apresenta o conteúdo dos registradores. Ex.: 1) R 2) R CS Mostra o conteúdo dos registradores. Mostra conteúdo de CS e aguarda modificação. U = Unassemble : Desmonta programa executável Ex.: 1) U 100 2) U 100 110 3) U100L9 Lista as instruções (32 bytes), partindo de CS:100 IdemdeCS:100 a CS:110 Idem 9 bytes a partir de CS:100 W= Write : grava arquivo ou setores físicos no disco. Ex.: 1) W Grava arq. nomeado, coloca tamanho em BX:CX 2) W 80 1 5 7 Grava 7 setores (iniciando no 5) para o drive b:, do endereço CS:80