Página 2 de 2

Re: Carga de Pantallas: Evitar textos ficheros

Publicado: Vie Feb 15, 2013 7:28 pm
por antoniovillena
No la he sacado de ningún libro. Directamente me he puesto a mirar el código (disponible en la página de Geoff Wearmouth http://www.wearmouth.demon.co.uk/) que ya he usado para varios proyectos. Pero sí, ese libro es una buena referencia para entender cómo funciona la ROM.

En cuanto a la eficiencia es relativo. El intérprete basic guarda cada valor numérico en sus dos formas (la decimal en ASCII y la binaria en formato coma flotante de 5 bytes). Si escribes "PRINT 1" ese uno lo transformará el intérprete en 31 0e xx xx xx xx xx, es decir 7 bytes, donde 31 es el 1 en ASCII, 0e es el separador, y xx .. xx es el número codificado en coma flotante. Si prescindiéramos de la representación binaria, la ejecución sería muy lenta, porque cada vez que el intérprete se encuentre con una constante tendría que pasarla de decimal a binario. De esta forma, este paso se hace una sola vez, exactamente cuando tras teclear la orden pulsamos intro. Se podría guardar solo la parte binaria pero entonces no sabemos lo que escribió el usuario exactamente (los valores 1e3 y 1000 dan el mismo resultado).

Por cierto VAL "23739" ocupa 8 bytes, se podría hacer con 7 (y sin perder velocidad) poniendo cualquier número de un dígito seguido de la representación binaria del 23739. El problema sería que al editarlo se pierde el valor, pero como normalmente los cargadores no se editan se podría hacer.

Re: Carga de Pantallas: Evitar textos ficheros

Publicado: Vie Feb 15, 2013 7:45 pm
por wilco2009
¿entonces es por una cuestión estética, para conservar el formato en el que se introdujo en número?
Bueno, eso es de una utilidad relativa.
Las calculadoras también tienen ese dilema a la hora de representar un número y lo resuelven de una manera bastante elegante.
El criterio podría ser simplemente, mostrar el número con los menos decimales posibles y en forma estándar siempre que no supere cierto número de dígitos. Si hacen falta más dígitos se utiliza la notación científica.

Re: Carga de Pantallas: Evitar textos ficheros

Publicado: Vie Feb 15, 2013 9:29 pm
por antoniovillena
Aparte de la cuestión estética también se gana velocidad a la hora de mostrar el listado. Básicamente hay 3 alternativas:
1. Guardar sólo en formato decimal. Los listados son rápidos pero la ejecución es lenta.
2. Guardar sólo en formato binario. La ejecución es rápida pero el listado del programa es lento.
3. Guardar ambos. Ejecución y listado rápido pero se ocupa más memoria por el almacenamiento doble.

Si lo que te importa es sólo la ejecución, como he dicho antes, siempre puedes poner un número de 1 dígito en la parte decimal, ocupando sólo 7 bytes la constante. El intérprete sólo tiene en cuenta la parte binaria a la hora de ejecutar.

Re: Carga de Pantallas: Evitar textos ficheros

Publicado: Sab Feb 16, 2013 6:57 am
por Hark0
Gracias por la aclaración... ;)

Creo que entendido algo más acerca de esta máquina.

Re: Carga de Pantallas: Evitar textos ficheros

Publicado: Mié Jul 01, 2020 5:01 pm
por Zeit
¿Que dirección sería la utilizada en una TS 2068 para el mismo fin?