Más revisiones/correciones
This commit is contained in:
parent
b16a6c8045
commit
f0b64c335a
|
@ -25,10 +25,12 @@ personalmente, veo en ella las siguientes virtudes:
|
|||
* ámbito de práctica y experimentación de computación dentro de límites
|
||||
* ya portada a plataformas de computación actuales y de varios años de antigüedad
|
||||
|
||||
¡todos estos conceotos suenan genial para mí, y espero que para tí también! sin embargo, noto algunos aspectos que pueden hacerla parecer no tan asequible:
|
||||
¡todos estos conceotos suenan genial para mí, y espero que para tí también!
|
||||
|
||||
sin embargo, noto algunos aspectos que pueden hacerla parecer no tan asequible:
|
||||
|
||||
* es programada en un lenguaje ensamblador, uxntal
|
||||
* utiliza notación {postfix} (alias notación polaca inversa) / está inspirada en máquinas forth
|
||||
* utiliza notación {postfix} (alias notación polaca inversa) y está inspirada en máquinas forth
|
||||
|
||||
la idea de este tutorial es explorar estos dos aspectos y revelar cómo trabajan juntos para dar a uxn su poder con una complejidad relativamente baja.
|
||||
|
||||
|
@ -36,9 +38,9 @@ la idea de este tutorial es explorar estos dos aspectos y revelar cómo trabajan
|
|||
|
||||
el núcleo uxn está inspirado por las máquinas forth en que utiliza la recombinación de componentes simples para lograr soluciones apropiadas, y en que es una máquina basada en pila.
|
||||
|
||||
esto implica que está principalmente basada en interacciones con una pila "push down", dónde las operaciines son indicadas mediante la llamada notación postfija.
|
||||
esto implica que está principalmente basada en interacciones con una pila "push down", dónde las operaciones son indicadas mediante la llamada notación postfija.
|
||||
|
||||
> Notación Polaca Reversa (NPR), también conocida como notación postfija polaca o simplemente notación postfija, es una notación matemática en la que los operadores siguen a sus operandos [...]
|
||||
> Notación Polaca Inversa (NPR), también conocida como notación postfija polaca o simplemente notación postfija, es una notación matemática en la que los operadores siguen a sus operandos [...]
|
||||
|
||||
=> https://es.wikipedia.org/wiki/Notaci%C3%B3n_polaca_inversa Notación Polaca Inversa - Wikipedia
|
||||
|
||||
|
@ -56,9 +58,9 @@ dónde, leyendo de izquierda a derecha:
|
|||
* el número 48 es empujado en la pila
|
||||
* + toma dos elementos de la parte superior de la pila, los suma, y empuja el resultado en la pila
|
||||
|
||||
el libro Starting Forth tiene algunas ilustraciones grandiosas sobre este proceso de suma:
|
||||
el libro Starting Forth tiene algunas buenas ilustraciones sobre este proceso de suma:
|
||||
|
||||
=> https://www.forth.com/starting-forth/1-forth-stacks-dictionary/#The_Stack_Forth8217s_Workspace_for_Arithmetic The Stack: Forth’s Workspace for Arithmetic
|
||||
=> https://www.forth.com/starting-forth/1-forth-stacks-dictionary/#The_Stack_Forth8217s_Workspace_for_Arithmetic The Stack: Forth’s Workspace for Arithmetic (Inglés)
|
||||
|
||||
## de infija a postfija
|
||||
|
||||
|
@ -107,7 +109,7 @@ las palabras binarias de 8 bits, también conocidas como bytes, son los elemento
|
|||
|
||||
uxn puede manejar también palabras binarias de 16 bits (2 bytes), también conocidas como cortos, mediante la concatenación de dos bytes consecutivos. vamos a hablar más sobre esto en el segundo día de este tutorial.
|
||||
|
||||
los números en uxn son expresados utilizando el sistema hexadecimal (base 16), en el qhe cada dígito (nibble) va de 0 a 9 y luego de 'a' a 'f' (en minúscula).
|
||||
los números en uxn son expresados utilizando el sistema hexadecimal (base 16), en el que cada dígito (nibble) va de 0 a 9 y luego de 'a' a 'f' (en minúscula).
|
||||
|
||||
un byte necesita dos dígitos hexadecimales (nibbles) para ser expresado, y un corto necesita cuatro.
|
||||
|
||||
|
@ -411,7 +413,7 @@ si la dirección es de 2 bytes de longitud, es asumido que es una dirección de
|
|||
|
||||
## runa hex literal
|
||||
|
||||
hablemos de otra runa: #.
|
||||
hablemos de otra runa: #
|
||||
|
||||
éste caracter define un "hex literal": es básicamente un atajo para la instrucción LIT.
|
||||
|
||||
|
@ -620,4 +622,3 @@ en el {tutorial de uxn día 2} empezamos a explorar los aspectos visuales de la
|
|||
# apoyo
|
||||
|
||||
si este tutorial te ha resultado de ayuda, considera compartirlo y brindarle tu {apoyo} :)
|
||||
|
||||
|
|
|
@ -6,9 +6,7 @@ en esta sección vamos a empezar a explorar los aspectos visuales de la computad
|
|||
|
||||
también discutiremos el trabajo con el modo corto o "short" (2 bytes) junto a los de un sólo byte en uxntal.
|
||||
|
||||
si todavía no lo has hecho te recomiendo que leas las sección anterior:
|
||||
|
||||
=> ./tutorial_de_uxn_día_1.gmi {tutorial de uxn día 1}
|
||||
si todavía no lo has hecho te recomiendo que leas las sección anterior en el {tutorial de uxn día 1}
|
||||
|
||||
# donde están tus cortos?
|
||||
|
||||
|
@ -70,6 +68,8 @@ ahora, si añadimos el sufijo '2' a la instrucción LIT, podríamos escribir en
|
|||
LIT2 02 30 ADD ( código ensamblado: a0 02 30 18 )
|
||||
```
|
||||
|
||||
en lugar de empujar un byte, LIT2 está empujando el corto (dos bytes) que sigue en la memoria, hacia abajo en la pila.
|
||||
|
||||
podemos utilizar la runa hexadecimal literal (#) con un corto (cuatro nibbles) en lugar de un byte (dos nibbles), y funcionará como una abreviatura de LIT2:
|
||||
|
||||
```
|
||||
|
|
|
@ -372,7 +372,7 @@ he dibujado el sprite usando el modo de mezcla 85 como indica nasu, pero lo camb
|
|||
|
||||
construyamos una subrutina que dibuje las 6 fichas de la pala en el orden correspondiente.
|
||||
|
||||
podríamos escribirffff la subrutina recibiendo como argumentos la posición x e `y` de su esquina superior izquierda:
|
||||
podríamos escribir la subrutina recibiendo como argumentos la posición x e `y` de su esquina superior izquierda:
|
||||
|
||||
```
|
||||
@dibuja-pala ( x^ y^ -- )
|
||||
|
|
|
@ -223,7 +223,7 @@ tal vez puedas usar estos valores como coordenadas para algunos sprites, o tal v
|
|||
|
||||
o ¿qué tal dibujar sprites condicionalmente, y/o cambiar los colores del sistema dependiendo de la hora? :)
|
||||
|
||||
¡también puedes utilizar los valores de la fecha y la hora como semillas para generar alguna pseudo-aleatoriedad!
|
||||
¡también puedes utilizar los valores de la fecha y la hora como semillas para generar algo de pseudo-aleatoriedad!
|
||||
|
||||
por último, recuerda que para cronometrar eventos con más precisión que segundos puedes contar las veces que se ha disparado el vector pantalla.
|
||||
|
||||
|
|
Loading…
Reference in New Issue