Diferencias
Muestra las diferencias entre dos versiones de la página.
010:consultorio [d/m/Y H:i] – creado miguel | 010:consultorio [d/m/Y H:i] (actual) – [Programar en código máquina] miguel | ||
---|---|---|---|
Línea 125: | Línea 125: | ||
</ | </ | ||
- | La pregunta es: ¿Cómo puedo hacer lo mismo, en Código Máquina o cualquier otro lenguaje, para ahorrar al máximo y que no sea tan tedioso el programarlo? | + | //La pregunta es: ¿Cómo puedo hacer lo mismo, en Código Máquina o cualquier otro lenguaje, para ahorrar al máximo y que no sea tan tedioso el programarlo? |
- | Pedro GONZALEZ ■ Barcelona | + | --- **Pedro González :: Barcelona** |
- | □ No entendemos muy bien el sentido de su pregunta, pero vamos a intentar orientarle: | + | No entendemos muy bien el sentido de su pregunta, pero vamos a intentar orientarle: |
- | — Si su problema es la cantidad de memoria disponible, el truco no está en el código máquina, sino en el empleo de variables o matrices alfanuméricas que consumen mucha menos memoria que las numéricas, ya que estas últimas gastan 6 bytes adicionales: | + | Si su problema es la cantidad de memoria disponible, el truco no está en el código máquina, sino en el empleo de variables o matrices alfanuméricas que consumen mucha menos memoria que las numéricas, ya que estas últimas gastan 6 bytes adicionales: |
- | — En cuanto al problema de tener que utilizar una larga lista de INKEY $ para capturar las diversas teclas, puede solucionarlo utilizando el valor ASCII de las mismas. Por ejemplo, la utilización de las teclas A...Z le permite direccionar | + | En cuanto al problema de tener que utilizar una larga lista de INKEY$ para capturar las diversas teclas, puede solucionarlo utilizando el valor ASCII de las mismas. Por ejemplo, la utilización de las teclas A...Z le permite direccionar |
- | mente el flujo de su programa con muy pocas instrucciones: | + | <code basic> |
+ | LET A = CODE INKEY$ GO SUB A (O GO SUB A * 100) | ||
+ | </ | ||
- | LET A = CODE INKEY $ GOSUB A (O GOSUB A* 100) | + | Donde sí puede ser de gran utilidad el código máquina es en la búsqueda de los valores de la tabla. Sería muy largo explicarle un programa completo, pero la idea general es cargar en el registro IX la dirección de la tabla a investigar |
- | — Donde sí puede ser de gran utilidad el código máquina es en la búsqueda de los valores de la tabla. Sería muy largo explicarle un programa completo, pero la idea general es cargar en el registro IX la dirección | + | Y en realidad tampoco necesita utilizar las parejas GO TO/GO SUB si utiliza una matriz como si fuera un archivo indexado. Supongamos una matriz alfanumérica DIM A$(10, 16) a la que Vd. quiere llamar pulsando las teclas 0 al 9. Los ocho primeros bytes de cada elemento contienen |
- | Y en realidad tampoco necesita utilizar las parejas GOTO/GOSUB si utiliza una matriz como si fuera un archivo indexado. Supongamos una matriz alfanuméri-ca DIM A $(10, 16) a la que Vd. quiere llamar pulsando las teclas 0 al 9. Los ocho primeros bytes de cada elemento contienen el valor AS-CIO del precio, y los ocho siguientes, la medida (esto le da hasta 99.999.999). | + | Una vez metidos los datos, su programa quedaría así: |
- | 10 IF (INKEY $ " | + | <code basic> |
- | + | 10 IF (INKEY$ " | |
- | 30 PRECIO = VAL A $ (INDICE, 1 TO 8) | + | 20 LET INDICE = (CODE INKEY$) — 47 /*CONVERTIR |
- | + | 30 PRECIO = VAL A$ (INDICE, 1 TO 8) | |
- | 30 MEDIDA = VAL A $ (INDICE, 9 TO 16) | + | 40 MEDIDA = VAL A$ (INDICE, 9 TO 16) |
+ | </ |