errores y traducción de código hasta línea 331
This commit is contained in:
parent
62b10011f9
commit
99c53687fe
|
@ -236,7 +236,7 @@ en sistemas de tipo forth podemos ver el siguiente tipo de notación para expres
|
|||
ADD ( a b -- a+b )
|
||||
```
|
||||
|
||||
esto significa que ADD tome el primer elemento desde arriba 'b', luego toma el siguiente primer elemento 'a', y empuja devuelta el resultado de sumar a+b.
|
||||
esto significa que ADD toma el primer elemento desde arriba 'b', luego toma el siguiente primer elemento 'a', y empuja devuelta el resultado de sumar a+b.
|
||||
|
||||
ahora que estamos en eso, hay una instrucción complementaria, SUB (resta) (opcode 19), que toma los dos elementos superiores de la pila, los resta, y empuja a la pila el resultado:
|
||||
|
||||
|
@ -248,24 +248,24 @@ nota que el orden de los operandos es similar al de la división que discutimos
|
|||
|
||||
## un primer programa
|
||||
|
||||
escribamos el siguiente programa en nuestro editor de texto favorito, y guardémoslo como hello.tal:
|
||||
escribamos el siguiente programa en nuestro editor de texto favorito, y guardémoslo como hola.tal:
|
||||
|
||||
```
|
||||
( hello.tal )
|
||||
( hola.tal )
|
||||
|0100 LIT 68 LIT 18 DEO
|
||||
```
|
||||
|
||||
ensamblémoslo y corrámoslo:
|
||||
|
||||
```
|
||||
$ ./bin/uxnasm hello.tal bin/hello.rom && ./bin/uxnemu bin/hello.rom
|
||||
$ ./bin/uxnasm hola.tal bin/hola.rom && ./bin/uxnemu bin/hola.rom
|
||||
```
|
||||
|
||||
veremos una salida con el siguiente aspecto:
|
||||
|
||||
```
|
||||
Assembled bin/hello.rom(5 bytes), 0 labels, 0 macros.
|
||||
Uxn loaded[bin/hello.rom].
|
||||
Assembled bin/hola.rom(5 bytes), 0 labels, 0 macros.
|
||||
Uxn loaded[bin/hola.rom].
|
||||
Device added #00: system, at 0x0000
|
||||
Device added #01: console, at 0x0010
|
||||
Device added #02: screen, at 0x0020
|
||||
|
@ -294,7 +294,7 @@ la última 'h' que vemos es la salida de nuestro programa. cambia el 68 a, por e
|
|||
acabamos de correr el siguiente programa en uxntal:
|
||||
|
||||
```
|
||||
( hello.tal )
|
||||
( hola.tal )
|
||||
|0100 LIT 68 LIT 18 DEO
|
||||
```
|
||||
|
||||
|
@ -313,7 +313,7 @@ leyendo el programa de izquierda a derecha, podemos ver el siguiente comportamie
|
|||
* la instrucción LIT empuja el número 68 a la pila
|
||||
* la instrucción LIT empuja el número 18 a la pila
|
||||
* la instrucción DEO toma el elemento superior de la pila (18) y lo usa como dirección de dispositivo
|
||||
* la instrucción DEO toma el elemento superiir de la pila (68) y lo usa como byte a escribir
|
||||
* la instrucción DEO toma el elemento superior de la pila (68) y lo usa como byte a escribir
|
||||
* la instrucción DEO escribe el byte a la dirección de dispositivo, dejando la pila vacía
|
||||
|
||||
¿y qué es el dispositivo de entrada/salida con la dirección 18?
|
||||
|
|
Loading…
Reference in New Issue