Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
cursos:ensamblador:aritmetica [02-02-2024 10:05] – [Multiplicar y dividir por potencias de 2] sromero | cursos:ensamblador:aritmetica [02-02-2024 10:12] (actual) – [Números aleatorios] sromero | ||
---|---|---|---|
Línea 203: | Línea 203: | ||
\\ **Dividiendo por potencias de dos**\\ | \\ **Dividiendo por potencias de dos**\\ | ||
- | Del mismo modo que desplazar a la izquierda es multiplicar, | + | Del mismo modo que desplazar a la izquierda es multiplicar, |
<code z80> | <code z80> | ||
Línea 449: | Línea 449: | ||
De la misma forma que se puede multiplicar con múltiples sumas, también podemos dividir de forma poco eficiente con múltiples restas. | De la misma forma que se puede multiplicar con múltiples sumas, también podemos dividir de forma poco eficiente con múltiples restas. | ||
- | Sin embargo, como ocurría con la multiplicación, | + | Sin embargo, como ocurría con la multiplicación, |
- | Mostraremos a continuación | + | Mostraremos a continuación |
\\ | \\ | ||
Línea 591: | Línea 591: | ||
Si hay una funcionalidad que necesitaremos casi con total seguridad para desarrollar un juego es la posibilidad de generar números aleatorios. Si queremos que cada partida sea diferente y que ciertas acciones varíen (como por ejemplo, que en un juego de puzzle no aparezcan siempre las mismas piezas), necesitaremos una fuente de aleatoriedad, | Si hay una funcionalidad que necesitaremos casi con total seguridad para desarrollar un juego es la posibilidad de generar números aleatorios. Si queremos que cada partida sea diferente y que ciertas acciones varíen (como por ejemplo, que en un juego de puzzle no aparezcan siempre las mismas piezas), necesitaremos una fuente de aleatoriedad, | ||
- | Hay varias formas de generar números aleatorios. La primera de ella es utilizar funciones matemáticas que nos devuelve | + | Hay varias formas de generar números aleatorios. La primera de ella es utilizar funciones matemáticas que nos devuelven |
Veamos una rutina muy simple (extraída de la página //Z80 bits//, de //Milos Bazelides// | Veamos una rutina muy simple (extraída de la página //Z80 bits//, de //Milos Bazelides// | ||
Línea 615: | Línea 615: | ||
</ | </ | ||
- | la rutina utiliza una semilla (RAND_SEED) que inserta en el registro A para realizar una serie de operaciones y generar el siguiente valor de la serie en A. | + | La rutina utiliza una semilla (RAND_SEED) que inserta en el registro A para realizar una serie de operaciones y generar el siguiente valor de la serie en A. |
Al final de la rutina podemos ver cómo hay una instrucción '' | Al final de la rutina podemos ver cómo hay una instrucción '' | ||
Línea 853: | Línea 853: | ||
\\ | \\ | ||
- | En realidad, podríamos | + | En realidad, podríamos |
\\ | \\ |