20
F2 B SPC F1 A SPC 0 ALPHA ALPHA MANUAL DE PROGRAMACION USER-RPL DESCRIPCION DE PANTALLA.-cuando la calculadora se enciende por primera vez ESCRIBIR OBJETOS EN LA EN LA LÍNEA DE COMANDOS.-la línea de comandos es donde se ingresa y edita los comandos y objetos. La línea de comandos se activa apenas se empieza a escribir Ejemplo: Realizar un programa que muestre dos números en la pila « A B « A B » » AUTOR: SUCA YUNGA FROILAN Página 1

Manual Hp50g

  • Upload
    afr4212

  • View
    67

  • Download
    8

Embed Size (px)

DESCRIPTION

Manual Hp50g

Citation preview

MANUAL DE PROGRAMACION USER-RPL

MANUAL DE PROGRAMACION USER-RPL

DESCRIPCION DE PANTALLA.-cuando la calculadora se enciende por primera vez

ESCRIBIR OBJETOS EN LA EN LA LNEA DE COMANDOS.-la lnea de comandos es donde se ingresa y edita los comandos y objetos. La lnea de comandos se activa apenas se empieza a escribirEjemplo:Realizar un programa que muestre dos nmeros en la pilaA B A B

F2 BSPC F1 ASPC 0 ALPHAALPHA

F2 BSPC F1 A

ENTER

CREAR SUBLINEAS EN LA LNEA DE COMANDOS.-cuando se est escribiendo un programaesta se escribir de manera continua en una sola lnea, razn por la cual se debe de crear otras sub-lineas.Ejemplo:Hacer un programa que muestre la suma: A + B +C + D + E + F A B C D E F + + + + +

SPC F3 CSPC F2 BSPC F1 AALPHAALPHA

F6 FSPC F5 ESPC F4 D

.

SPC SPC SPC SPC

ENTER

GUARDAR UN OBJETO.-cuando se crean objetos en la pila, hay la necesidad de guardarlas en una variable para su posterior uso dentro de un programa. Para guardar un objeto se sigue la siguiente secuencia.Ejemplo:1.-guardar el objeto 5 en la variable USER

ENTER5 a.-objeto en el nivel 1

b.-presionar la tecla:

Oc.-entre los apostrofes se debe de escribir el nombre con el que se guardara el objeto

F5 ER SIN SALPHATAN UALPHA

d.-presionamos la tecla:

ENTER

Y=e.-presionamos la tecla:

STO K

MODIFICAR UN OBJETO.-cuando se guardan objetos de la pila, a veces hay la necesidad podemos modificar el contenido de la variableEjemplo:Modificar el objeto guardado en la variable USER, del ejemplo anteriora.- presionar la tecla:

Ob.- entre los apostrofes se debe de escribir el nombre de la variable o buscarlo en el men VAR y presionar la tecla de funcin que le corresponde a la variable que contiene el objeto

F1 A

c.-presionamos la tecla:

ENTER

d.- presionamos las teclas:.e.- agregando el 6:

6

e.- presionando la tecla:

ENTER

f.-para poder ver la modificacin buscamos la variable en el men VAR y presionamos la tecla de funcin que le corresponde a la variable.

F1 A

COPIAR, CORTAR Y PEGAR.-copiar parte o todo un programa, para luego pegarlo dentro de otro programaEjemplo:Para un mejor entendimiento realizaremos dos programas S1 y S2, para luego copiar parte del programa S1 y pegarlo en el programa S2.

Programa S1:este programa muestra una cadena de caracteres (USER-RPL) en la lnea 5, y el programa terminara si se presiona una tecla.CLLCD"USER-RPL"5DISP0WAITDROPCreando el programa S1:

F4 DF3 CF3 CALPHAALPHAY=NXTLY=NXTLEditando el programa en la lnea de comandos:

SPC

Y=NXTLSYMBPSIN SF4 D5 SPC 0 R SPC F5 ESIN STAN USYMBPR SPC

TOOLI

TOOLI

ENTERCOS TF1 A+ /-WSPC

Guardando el programa:

STO KENTER1 SIN SALPHAALPHAO

Programa S2:este programa muestra una cadena de caracteres (HP50g) en la lnea 6, y el programa terminara si se presiona una tecla, mostrando en la pila el cdigo que identifica la tecla presionada CLLCD"HP50g"6DISP0WAIT

Creando el programa S2:

Editando el programa en la lnea de comandos

Y=NXTLALPHAF4 DF3 CSPC Y=NXTLF3 CALPHA

Y=APPSGMODEHSYMBP0 5 SPC

F1 A+ /-WSPC 0 SPC SYMBPSIN STOOLIF4 DSPC 6

COS TTOOLI

ENTER

Guardando el programa:

STO KENTER2 SIN SALPHAALPHAO

VARJUna vez creado los programas, estos programas se guardan en el directorio actual (en este ejemplo el directorio actual es HOME), razn por la cual podemos ver los programas S1 y S2 en el rea de men (para acceder a las variables del directorio actual presionar las tecla ).

1.-modificar el programa S1: abrir el programa, para buscar la parte que nos interesa copiar o cortar, lo hacemos con las teclas de desplazamiento.

1

OSIN SENTER

2.-copiar o cortar: buscar el inicio de la parte que queremos copiar o cortar, esto lo hacemos con las teclas de desplazamiento

8 veces

VARJ

10 veces

MODEH

ON

3.-modificar el programa S2: abrir el programa, para buscar la parte que nos interesa pegar lo que hemos cortado o copiado del programa S1.

ENTER2 SIN SO

SPC

4 veces

NXTL

ENTER

INDICADORES DEL SISTEMA O BANDERAS.- en la ejecucin de un programa debemos de activar y/o desactivar banderas para lo cual debemos de conocer la funcin de cada bandera para as poder obtener los resultados que queremos mostrar.

Y=MODEHFLAGS

Una bandera activada est indicada por el aspa, como se muestra en la figura.

F3 CEjemplo:Si la bandera 3 esta desactivada, procedemos a escribir en la lnea de comandos

ENTER5 R

Si la bandera 3 esta activada, procedemos a escribir en la lnea de comandos

ENTER5 R

REMPLAZAR VALORES EN UNA EXPRESION.-cuando se tienen expresiones en las cuales se debe de remplazar determinadas variables por valores numricos.Ejemplo:Realizar un programa que remplace los valores de a=2, b=3 y c=4a X SQ* b X * + c +0 = {a2 b 3 c 4 } | EVAL

R SPC X XALPHASPC F1 AALPHA

F3 CALPHASPC X XSPC F2 BALPHA

F1 AALPHA. + /-W0 SPC

TOOLIF3 CALPHASPC 3ALPHASPC SPC 2 SPC F2 B

EVALNSPC SPC 4

ENTER

EVALN

Comando Where (|): sustituye valores por nombres en una expresin.

COMANDOS DE LA SECCION STACKDUP.- Obtiene una copia del argumento (o del objeto en el nivelSWAP.- Intercambia la posicin de dos objetosDROP.-Elimina el objeto de nivel 1 de la pila.OVER.-Devuelve una copia al nivel 1 del objeto en el nivel 2.ROT.- Rota los primeros tres objetos en la pila, moviendo el objeto que est en el nivel 3 al nivel 1.UNROT.-Cambia el orden de los tres primeros objetos en la pila.

10DUP 10 1010 20 SWAP 20 10 10 DROP10 20 OVER 10 20 1010 20 30 ROT 20 30 1020 30 10 UNROT10 20 30

Practicando:

1.-10 2030 40 50 60 30 20Solucin:

10 20 30 40 50 60 3DROPN 10 20 30 10 20 30 ROT 20 30 1020 30 10 DROP 20 30

ROLL.-Mueve el contenido del nivel actual al nivel 1. La porcin de la pila debajo del nivel actual avanza hacia arriba.ROLLD.- Mueve el contenido del nivel 1 al nivel actual. La porcin de la pila debajo del nivel actual baja.PICK.- Copia el contenido del nivel actual en el nivel de pila 1. Todos los objetos existentes suben un nivel.UNPICK.-Reemplaza el objeto que est en el nivel n+2 por el objeto que est en el nivel 2 y borra los objetos que estn en los niveles 1 y 2.PICK3.-Duplica el objeto en el nivel 3 de la pila.DEPTH.-Obtiene un nmero real que representa la cantidad de objetos presentes en la pila (antes de ejecutar DEPTH).

10 20 30 40 4ROLL 20 30 40 10 20 30 40 10 4ROLLD10 20 30 40 10 20 30 2PICK 10 20 30 20 10 20 30 03 UNPICK0 20 30 10 20 30 PICK3 10 20 30 10 10 DEPTH 10

2.- 10 20 30 40 50 60 60 10Solucin:

10 20 30 40 50 60 6 ROLLD60 10 20 30 40 50 60 10 20 30 40 50 4 DROPN 60 10 60 10 SWAP 10 60

3.- 10 20 30 40 50 60 60 10Solucin:

DUP2.-Obtiene copias de los dos argumentos (o los objetos en los niveles 1 y 2 de la pila).DUPN.-Duplica los niveles del nivel seleccionado en el nivel 1 y empuja hacia arriba los niveles existentes para acomodar los niveles duplicados.DROP2.- Elimina los dos primeros objetos de la pila.DROPN.- Elimina los primeros objetos n + 1 de la pila (los primeros objetos n excluyendo el nmero entero n en s mismo).DUPDUP.- Duplica un objeto dos vecesNIP.-Desecha el elemento que est en el nivel 2 de la pila.NDUPN.-Duplica un objeto n veces y da n.

10 20DUP2 10 20 10 20 10 20 303DUPN10 20 3010 20 30 10 20DROP2 10 20 302DROPN 10 10 DUPDUP 10 10 10 10 20 NIP 20 103 NDUPN 1010 103

COMANDOS DE LA SECCION NEMPURGE.- Purga las variables nombradas o vaca los subdirectorios del directorio actual.MEM.- Obtiene la cantidad de bytes de RAM disponible.BYTES.- Obtiene el nmero de bytes y la suma de verificacin para el objeto dado (REVISAR)NEWOB.-Crea una copia nueva del objeto especificadoARCHIVE.-Crea una copia de reserva del directorio HOME.RESTORE.-Reemplaza el directorio HOME actual con la copia de reserva especificada creada anteriormente por ARCHIVE

{V1} PURGEMEM 246066.5"HP50G"BYTES # 21644d 10: 2:P1 ARCHIVE : 2:P1 RESTORE

COMANDOS DE LA SECCION DIR

PURGE.- Purga las variables nombradas o vaca los subdirectorios del directorio actual.RCL.-Obtiene los contenidos no evaluados de una variable especificada.STO.-Almacena un objeto en una variable u objeto especificado.PATH.- Obtiene una lista que especifica la ruta al directorio actual.CRDIR.- Crea un subdirectorio vaco con el nombre especificado en el directorio actual.PGDIR.- Purga el directorio nombrado

{V1} PURGE'V1' RCL 10'nombre' STO PATH {HOME}'nombre_directorio' CRDIR 'nombre_directorio' PGDIR

VARS.- Obtiene una lista de nombres de todas las variables en el men VAR para el directorio actual.TVARS.- Enumera todas las variables globales en el directorio actual que contienen objetos de un tipo especificadoORDER.-Reordena la variables en el directorio actual (presentado en el men VAR) en el orden especificado.

VARS#del tipo_de_objeto TVARS {v1 v3 v9} ORDER

COMANDOS DE LA SECCION BRCH

==.-.-.-.-.-

LAZOS DE PROGRAMALos lazos de programa son instrucciones que permiten al programa la ejecucin de un nmero de declaraciones repetidamente.

STARTNEXT

Valor inicial valor final START expresiones del programa crear ndice NEXT

Ejemplo: realizar un programa que dado el nmero 10, se muestre sus consecutivos1 'j' STO @1 se guarda en l variable j15 @valor inicial valor finalSTART @inicia10 j + @expresin del programa'j' 1 STO+ @ndice creado para incrementar NEXT @siguente

STARTSTEP

Valor inicial valor final START expresiones del programa incremento NEXT

FORNEXTValor inicial valor final FORloopindexexpresiones del programa NEXT

FORSTEPValor inicial valor final FORloop_indexexpresiones del programa incremento STEP

COMANDOS DE LA SECCION TEST

==.-.-.-.-.-

AND.-OR.-XOR.-NOT.-SAME.-TYPE.-

SF.-CF.-SF?.-CF?.-SF?C.-CF?C.-LININ.-

COMANDOS DE LA SECCION TYPE

OBJSepara los componentes de un objeto.ARRY.- Obtiene un vector de n elementos reales o complejos o una matriz de n m elementos reales o complejos.LIST.- Toma n objetos especificados y da una lista de esos objetos.STR.- Convierte cualquier objeto en forma de cadena.TAG.- Combina objetos para crear un objeto etiquetado.UNIT.-Crea una unidad objeto a partir de un nmero real y una expresin de unidad.

[1 3] OBJ1 3 {3} 1 3 {2 1} ARRY [[1][3]] 10 20 2LIST {10 20} USER STR"USER" 100 ETIQUETA TAG :ETIQUETA: 100

CR.-Separa las partes real e imaginaria de un nmero complejo o de una serie compleja.RC.-Combina dos nmeros o dos series reales en un nmero o serie complejos.NUM.-Obtiene el cdigo del primer carcter en una cadenaEQSepara una ecuacin en sus lados izquierdo y derecho.TYPE.- Obtiene el nmero de tipo de un objeto.VTYPE.- Obtiene el nmero de tipo del objeto en la variable.

(10, 20) CR10 20 10 20RC (10, 20) "USER-RPL" NUM 85 85CHR "U" : ETIQUETA: 100 DTAG 100 'X=Y+1'EQ 'X''Y+1' "HP50G"TYPE2

COMANDOS DE LA SECCION ELEM

GET.-Recupera el objeto especificado de una matriz, una lista o una serieGETI.-Recupera el objeto especificado de una matriz, una lista o una serie y el ndice del objeto siguientePUT.- Reemplaza el objeto en la posicin indicada en una seriePUTI.- Igual a PUT (ver ms arriba), pero tambin incrementa la posicinSIZE.- Obtiene la cantidad de caracteres en una cadena, los elementos en una lista, las dimensiones de una serie, los objetos en un objeto unidad u objeto algebraico o las dimensiones de un objeto grfico.POS.- Obtiene la posicin de una sub-cadena dentro de una cadena o la posicin de un objeto dentro de una lista.

{10 20} 2GET 20 {10 20 30} 2GETI {10 20 30} 3 20 {10 20 30} SIZE3 {10 20 30} 20 POS2

HEAD.-Obtiene el primer elemento de una lista o cadena.TAIL.- Obtiene todos los elementos de una lista o cadena excepto el primero.

{10 20 30} HEAD 10 {10 20 30} TAIL {20 30}

COMANDOS DE LA SECCION PROC

DOLIST.-Aplica comandos, programas o funciones definidas por el usuario a las listas.DOSUBS.- Aplica un programa o un comando a grupos de elementos en una lista.NSUB.-Provee acceso a la posicin de sublista actual durante una repeticin de un programa o comando aplicado, usando DOSUBS.STREAM.- Ejecuta obj repetidamente en los dos primeros elementos en una lista hasta que sta queda agotada. Indica el resultado final.REVLIST.- Invierte el orden de los elementos en una lista.SORT.-Clasifica los elementos en una lista en orden ascendenteSEQ.-Obtiene una lista de los resultados generados por la ejecucin repetida de objexecusando index entre xstarty xend, en pasos de xincr.

{10 20 30} {40 50 60} 2 + DOLIST {50 70 90} {10 20 30} 3 + / DOSUBS{1/5} {10 20 30 40 50} 4 NSUBDOSUBS{10 20 30 40 1 20 30 40 502} {10 20 30 40 50} 4 NSUB + DOSUBS {10 20 30 41 20 30 40 52} {10 20 30 40 50} 4 ENDSUBDOSUBS {10 20 30 40 2 20 30 40 502} {10 20 30 40 50} 4 ENDSUB + DOSUBS {10 20 30 42 20 30 40 52} {10 20 30 40 50} + STREAM 150 {10 20 30 40 50} REVLIST {50 40 30 20 10} {6 10 -5}SORT {-5 6 10} 'X^2' X 1 4 1 SEQ {1 4 9 16}

COMANDOS DE LA SECCION GROB

GROB.-Crea un objeto de grficos de un objeto especificado, donde el argumento ncharsize especifica el tamao del objeto.BLANK.-Crea un grob (objeto grfico) en blanco, del ancho y altura especificados.GOR.-Superpone el objeto grfico grob1 al grobtarget.GXOR.-Superpone grob1 sobre grobtargetSUB.-Obtiene la porcin especificada de un objeto.

HP 0 GROB GROB 12 81D3015401540FD301500150015000000 #2 #1BLANK GROB 2 1 00 #20#10 BLANK {#10 #5} HP50G0 GROB GOR #20 #10BLANK NEG {#10 #5} HP50G 0GROB GOR #20 #10 BLANK NEG {#10 #5} H50G 0GROB GXOR #20#10 BLANK NEG {#10 #5} {#15 #9} SUB GROB 6 5F3F3F3F3F3

REPL.-Reemplaza una porcin del objetivo con un objeto especificado, comenzando en la posicin especificada.LCD.-Presenta el objeto de grficos especificado con su pixel superior izquierdo en la esquina superior izquierda de la pantalla.LCDObtiene la pila actual y la pantalla de men como un objeto de grficos de 131 80.SIZE.- Obtiene la cantidad de caracteres en una cadena, los elementos en una lista, las dimensiones de una serie, los objetos en un objeto unidad u objeto algebraico o las dimensiones de un objeto grficoANIMATE.- Presenta objetos grficos en secuencia.

#30#30 BLANK NEG {#0 #0}#15 #15 BLANK REPL GROB 30 300008FFFFFFFFFF3 HP50G 0 GROB LCD GROB131 80 00000000FFFDFFFF70 #3#3 BLANK SIZE # 3d # 3d

COMANDOS DE LA SECCION PICTPICT.- Pone el nombre PICT en la pilaPDIM.- Reemplaza PICT por un PICT en blanco, de las dimensiones especificadasLINE.-Dibuja una lnea en PICT entre las coordenadas de entrada.TLINE.-apaga y enciende cada pixel que est encendido o apagado, para cada pixel a lo largo de la lnea en PICT definido por las coordenadas especificadasBOX.-Dibuja en PICT un cuadro cuyas esquinas opuestas estn definidas por el pixel especificado o coordenadas de unidades del usuario

PICT PICT #200 #200PDIM {#10 #10} {#90 #32} LINE {#10 #10} {#90 #32} TLINE {#10 #10} {#50 #50} BOX GROB131 80 000000...00000000000000

PDIM.- Reemplaza PICT por un PICT en blanco, de las dimensiones especificadasARC.-Dibuja un arco en PICT en sentido anti-horarioPIXON.-Enciende el pixel en la coordenada especificada en PICTPIXOFF.-Apaga el pixel en la coordenada especificada en PICT.PIX?- Verifica si el pixel especificado en PICT est encendidoPVIEW.- Presenta PICT con las coordenadas especificadas en la esquina superior izquierda de la pantalla de grficosPXC.-Convierte las coordenadas especificadas en pixels en coordenadas en unidades del usuarioCPX.-Convierte las coordenadas de unidad especificadas por el usuario en coordenadas de pixel

#200 #200PDIM {#45 #45} #20 1 90 ARC {#45 #45} PIXON {#45 #45} PIXOFF {#45 #45} PIX? {#0 #0}PVIEW {#0 #0}PXC (-6.5, 4) (GROB 6 5F3F3F3F3F3 guardado en PICT) (-6.5, 4) CPX {#0 #0}

COMANDOS DE LA SECCION IN

INFORM.- Crea una forma de entrada definida por el usuario (cuadro de dilogo).NOVAL.- Marca el lugar para los valores de restablecimiento e iniciales en cuadros de dilogo definidos por el usuario. NOVAL aparece cuando hay un campo vaco.CHOOSE.-Crea un cuadro de seleccin definido por el usuarioINPUT.- Pide la entrada de datos para la lnea de comandos y detiene las operaciones de pila o de lnea de comandos.KEY.-Suspende la ejecucin de un programa hasta que se oprima una tecla, luego da la ubicacin de la fila y columna xnm de dicha tecla.

"TITULO" {{obj1 obj2 obj3}... {obj1 obj2 obj3}} {#Col #e.tab}{Valores de reajuste} {Valores pordefecto}INFORM{v1vn} 1Dnde: obj1.-cadena de caracteres que identifica el dato a ingresar obj2.- cadena de caracteres que describe el dato a ingresar obj3.-un nmero que identifica el tipo de objeto a ingresar

"TITULO"{{obj1 obj2}... {obj1 obj2} } cCHOOSE obj2 1Dnde: obj1.-cadena de caracteres que identifica lo que se selecciona obj2.- objeto que se colocara en la pila c.-la posicin en la caja de seleccin"TITULO"{"MOSTRAR" {1 2} } INPUT"MOSTRAR""TITULO"{"MOSTRAR" { 1 2} V} INPUT"MOSTRAR""TITULO"{ "MOSTRAR" { 1 2}ALG} INPUT"MOSTRAR""TITULO"{ "MOSTRAR" { 1 2} -1}INPUT"MOSTRAR""TITULO"{ "MOSTRAR" {1 2} }INPUT"MOSTRAR""TITULO"{"MOSTRAR}INPUT"MOSTRAR""TITULO""MOSTRAR"INPUT"MOSTRAR"

WAIT.-Suspende la ejecucin del programa por un tiempo especificado o hasta que se oprima una tecla.PROMPT.-Presenta el contenido de prompt en el rea de estado y detiene la ejecucin del programa.

COMANDOS DE LA SECCION ARITH

STO+.- Agrega un nmero u otro objeto a una variable.STO- .-Calcula la diferencia entre un objeto y una variable y almacena el objeto en la variable.STO*.-Multiplica el contenido de una variable especificada por un nmero u otro objetoSTO/.- Calcula el cociente de un nmero y el contenido de una variable especificada. Almacena el nuevo valor en la variable especificada.INCR.-Toma una variable, le suma 1, almacena nuevamente el nuevo valor en la variable original y da el nuevo valor.DECR.-Toma una variable, resta 1, almacena de nuevo el nuevo valor en la variable original y da el nuevo valor

SINV.-Reemplaza el contenido de una variable con su inversoSNEG.-Reemplaza el contenido de una variable con su negativoSCONJ.- Conjuga el contenido de un objeto nombrado

COMANDOS DE LA SECCION OUTPVIEW.-Presenta PICT con las coordenadas especificadas en la esquina superior izquierda de la pantalla de grficos.TEXT.-Presenta la pila.CLLCD.- Despeja (deja en blanco) la pantalla de la pila.DISP.-Presenta obj en la ensima lnea de pantallaFREEZE.- Inmoviliza la parte especificada de la pantalla para que no se actualice hasta que se oprima una tecla.MSGBOX.-Crea un cuadro de mensajes definido por el usuarioBEEP.-Emite un sonido en n hertz por x segundos.

TEXT CLLCD "HP50G" 5 DISP "HP50G"MSGBOX 1500 0.25 BEEP

10 20 A BCLLCD A B + "SUMA" TAG 5DISP 0 WAIT

COMANDOS DE LA SECCION ERRORDOERR.- Ejecuta un error especificado por el usuario, causando que un programa acte exactamente como si ocurriese un error normal.ERRN.-Obtiene el nmero de error del error ms reciente de la calculadora.ERRM.- Obtiene una cadena que contiene el mensaje de error del error ms reciente de la calculadoraERR0.-Borra el ltimo nmero de error (y mensaje) de tal forma que una ejecucin posterior de ERRN da # 0h.LASTARG.-Obtiene copias de los argumentos del ltimo comando ejecutado.

1.-interpolacion"INTERPOLACION" {{"A:" } {"B:" } {"C:" } { } {"D:" } {"E:" } } {2 1} { } { } INFORMDROP OBJDROP a b c d b a c - a d - / b e - * -

AUTOR: SUCA YUNGA FROILANPgina 17