Mudanças entre as edições de "Montador do Patinho Feio/Apêndices/Exemplo de Programa Absoluto"

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
Linha 27: Linha 27:
 
/00 SI
 
/00 SI
   
  +
▊PASSO2
█PASSO2
 
   
 
1 @BLTC
 
1 @BLTC
Linha 229: Linha 229:
 
199 ED3 45 DEFC @E
 
199 ED3 45 DEFC @E
 
200 ED4 46 DEFC @F
 
200 ED4 46 DEFC @F
█████████████████████████████████ 201 000 FIM 0
+
▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊ 201 000 FIM 0
 
</pre>
 
</pre>

Edição das 11h04min de 25 de novembro de 2015

Apêndice G: Exemplo de Progama Absoluto:

MEM  E00
LER  E01
LEY  E7C
ARM  E34
SAI  E72
LIR  E23
LEX  E25
GUA  E31
PRE  E4F
VRC  E49
CAI  E4D
ENA  E5F
WAT  E65
WFF  E76
IGR  E7E
ACC  E84
LOP  E86
DIS  EC5
ACH  EB5
BRO  EB5
ARA  EB8


/00 SI

▊PASSO2

   1  @BLTC
   2  E00                ORG     /E00
   3  *
   4  * HEXAM - PROGRAMA QUE CARREGA A MEMORIA
   5  *         A PARTIR DE DADOS FORNECIDOS
   6  *         EM HEXADECIMAL PELA CONSOLE
   7  *
   8  ********************************************************************
   9  *
  10  *   HEXAM - INSTRUCOES DE UTILIZACAO:
  11  *
  12  * 1. ENDERECAR HEXAR
  13  * 2. DAR PARTIDA
  14  * 3. O CANAL B VAI FICAR ESPERANDO ENDERECAMENTO.
  15  * 4. PARA ENDERECAR A QUALQUER MOMENTO, BATER ARROBA (@).
  16  * 5. O COMPUTADOR RESPONDE C/ RETURN, 2 LINEFEEDS.
  17  * 6. ENTRAR C/ ENDERECO EM HEXA, COM 3 DIGITOS
  18  * 7. SE ERRAR, BASTA VOLTAR P/ 4 OU BATER UM BRANCO.
  19  *    NESTE CASO, O PROGRAMA IGNORA A ENTRADA ANTERIOR
  20  *    E AGUARDA NOVO ENDERECO.
  21  * 8. UMA VEZ ENDERECADO, OS DADOS QUE FOREM FORNECIDOS
  22  *    SERAO GUARDADOS EM SEQUENCIA A PARTIR DO ENDERECO
  23  *    ESPECIFICADO.
  24  * 9. OS DADOS DEVERAO VIR SEPARADOS POR UM UNICO BRANCO.
  25  *10. O ULTIMO DADO DA LINHA NAO DEVE SER SEGUIDO DE BRANCO,
  26  *    SENDO QUE NESTE CASO UM LINEFEED, RETURN OU VICE
  27  *    VERSA O SUBSTITUIRA'.
  28  *11. UM BRANCO OU RETURN DEPOIS DO DADO E' UMA ORDEM P/
  29  *    QUE O DADO SEJA ARMAZENADO.
  30  *12. DEPOIS DE CADA BRANCO OU RETURN O BUFFER E' ZERADO,
  31  *    E PORTANTO SE FOREM DADOS 2 BRANCOS EM SEQUENCIA
  32  *    SERA' GUARDADO UM ZERO NO LUGAR DO SEGUNDO BRANCO.
  33  *13. EM CASO DE ERRO NOS DADOS, SE O CARACTER FORNECIDO
  34  *    FOR HEXADECIMAL,BASTA BATER DE NOVO EM SEGUIDA, SEM
  35  *    BRANCOS, O DADO CORRETO. SO' SAO GUARDADOS NA MEMORIA
  36  *    OS DOIS ULTIMOS DIGITOS.
  37  *14. SE O CARATER NAO FOR HEXADECIMAL, O COMPUTADOR RESPONDE
  38  *    COM UMA SETA (_) E PARA O PROESSAMENTO.
  39  *15. NESTE CASO, DANDO PARTIDA, O PROGRAMA VOLTA A SER
  40  *    EXECUTADO COMO NO CASO 14.
  41  *16. ANTES DE DAR ENDERECAMENTO, E' PRECISO NAO ESQUECER
  42  *    DE GUARDAR O DADO ANTERIOR. SE NAO FOR DADO UM BRANCO
  43  *    OU RETURN, O DADO NAO SERA' ARMAZENADO.
  44  *
  45  ********************************************************************
  46  *
  47  E00 9A     HEXAM   INIB    *       INIBE INTERRUPCAO
  48  *
  49  * SECAO DE LEITURA DE ENDERECO
  50  *
  51  E01 FE 7C  LEENDER PUG     LECONV  LE PRIMEIRO CAR. DO END.
  52  E03 AE 01          PLAN    LEENDER SE BCO. OU RETURN, VOLTA
  53  E05 D2 20          XOR     /20     NAO| MONTA "ARM"
  54  E07 2E 34          ARM     ARM     GUARDA P/EXECUTAR
  55  E09 FE 7C          PUG     LECONV  LE SEG. CARATER
  56  E0B AE 01          PLAN    LEENDER SE BCO, VOLTA A LER ENDERECO
  57  E0D D1 4F          DE      4       AJEITA P/ COMPOR
  58  E0F 2E 35          ARM     ARM-1   GUARDA
  59  E11 FE 7C          PUG     LECONV  LE TERCEIRO CARATER
  60  E13 AE 01          PLAN    LEENDER SE BCO, VOLTA A LER END.
  61  E15 6E 35          SOM     ARM+1   SE NAO COMPOE COM SEGUNDO DIG.
  62  E17 2E 35          ARM     ARM+1   GUARDA P/ EXECUTAR
  63  E19 DA 0D          CARI    /0D     SAI RETURN
  64  E1B FE 72          PUG     SAI     NA TTY
  65  E1D DA 0A          CARI    /0A     SAI LINEFEED
  66  E1F FE 72          PUG     SAI     NA TTY
  67  E21 FE 72          PUG     SAI     IDEM
  68  *
  69  * LEITURA DE UMA PALAVRA
  70  *
  71  E23 80     LIMPA   LIMPO   *       ZERA
  72  E24 99             TRE     *       EXTENSAO
  73  E25 FE 7C  LEPROX  PUG     LECONV  LE UM CARATER
  74  E27 AE 31          PLAN    GUARDA  SE BCO OU LINEFEED, STORE.
  75  E29 99             TRE     *       SE NAO, TRAZ EXTENSAO
  76  E2A 01 4F          DE      *       AJEITA PARA COMPOR
  77  E2C 60 01          SOM     /001    COMPOE
  78  E2E 99             TRE     *       C/ DIGITO LIDO
  79  E2F 0E 25          PLA     LEPROX  CONTINUA LENDO ATE' ACHAR BCO/RET
  80  *
  81  * ARMAZENAMENTO NA MEMORIA
  82  *
  83  
  84  
  85  
  86  
  87  
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180  *
 181  * BUFFERS E CONSTANTES
 182  *
 183  *
 184  EC4  00    ACC     DEFC    0       P/ SALVAR ACUMULADOR
 185  ED3  30    DIGITOS DEFC    @0
 186  ED3  31            DEFC    @1
 187  ED3  32            DEFC    @2
 188  ED3  33            DEFC    @3
 189  ED3  34            DEFC    @4
 190  ED3  35            DEFC    @5
 191  ED3  36            DEFC    @6
 192  ED3  37            DEFC    @7
 193  ED3  38            DEFC    @8
 194  ED3  39            DEFC    @9
 195  ED3  41            DEFC    @A
 196  ED3  42            DEFC    @B
 197  ED3  43            DEFC    @C
 198  ED3  44            DEFC    @D
 199  ED3  45            DEFC    @E
 200  ED4  46            DEFC    @F
▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊▊ 201  000                FIM      0