Armazenando e carregando os programas
Não pareceria prático datilografar um programa inteiro cada vez que é needed, e para evitar isto é possível armazenar um programa no disco, com a vantagem enorme que já sendo montado lhe não ser necessário para funcionar eliminam erros outra vez para o executar.
As etapas para conservar um programa que está armazenado já na memória são:
- Obter o comprimento do programa que subtrai o endereço final do endereço inicial, naturalmente no sistema hexadecimal.
- Dar ao programa um nome e uma extensão.
- Pôr o comprimento do programa sobre o registo CX.
- A ordem elimina erros para escrever o programa no disco.
Usando o seguinte programa como um exemplo, nós teremos uma idéia mais desobstruída de como fazer exame destas etapas. Quando o programa é montado finalmente olharia como este:
0C1B:0100 mov ax,0002
0C1B:0103 mov bx,0004
0C1B:0106 add ax,bx
0C1B:0108 int 20
0C1B:010 A
-h 10a 100
020a 000a
-n test.com
-rcx
CX 0000
:000a
-w
Writing 000A bytes
Para obter o comprimento de um programa o comando de “h” é usado, desde que nos mostrará a adição e a subtração de dois números no hexadecimal. Para obter o comprimento de nossos, nós damos a lhe como parâmetros o valor do endereço final do nosso programa (10A), e ao endereço inicial do programa (100). O primeiro resultado o comando mostra-nos que é a adição dos parâmetros e o segundo é a subtração.
O comando de “n” permite que nós nomeiem o programa. O comando do “rcx” permite que nós mudem o índice do registo CX ao valor que nós obtivemos do tamanho da lima com “h”, neste caso 000a, desde que o resultado da subtração do endereço final do endereço inicial.
Última, o comando de “w” escreve nosso programa no disco, indicando quantos bytes escreveu. Também, para conservar etapas já carregadas de uma lima dois ser necessário:
- Dar o nome da lima a ser carregada.
- Carregá-lo que usa o “l” comando (da carga).
Obter o resultado correto das seguintes etapas, é necessário que o programa acima esteja criado já.
Dentro de eliminar erros de nós escrevem o seguinte:
-n test.com
-l
-u 100 109
0C3D:0100 B80200 MOV AX,0002
0C3D:0103 BB0400 MOV BX,0004
0C3D:0106 01D8 ADD AX,BX
0C3D:0108 CD20 INT 20
O último comando de “u” é usado verificar que o programa estêve carregado na memória. O que é que desmonta o código e o mostra que desmontou. Os parâmetros indicam PARA ELIMINAR ERROS de onde e a onde desmontar. ELIMINAR ERROS carrega sempre os programas na memória no endereço 100H, se não indicado.
|