; *********************************************************************** ; Programme: SXF-2.TXT version PEP813 sous WINDOWS ; ; Ce programme fait appel à une fonction qui retourne ; au programme principal le Xième caractère de l'alphabet. ; Ce caractère sera choisi par l'utilisateur. ; ; auteur: Bernard Martin ; code permanent: non applicable ; courriel: martin.bernard@uqam.ca ; date: hiver 2020 ; cours: INF2171 ; *********************************************************************** LDA table,i ; pointe à l'alphabet STA -3,s SUBSP 3,i ; #caract #alphabet CALL affiche ; #retour STRO caractèr,d CHARO 0,s ADDSP 1,i ;#caract STOP ; ;IN: SP+0=adresse de la table des caractères de l'alphabet ; ;OUT: SP+0=retourne le caractère de l'alphabet ; position:.EQUATE 0 ;#2d sauveX: .EQUATE 2 ;#2h retour: .EQUATE 4 ;#2h alphabet:.EQUATE 6 ;#2h caract: .EQUATE 8 ;#1h ; affiche: SUBSP 4,i ; #sauveX #position STX sauveX,s ; conserve la valeur du registre X STRO demande,d DECI position,s ; quel caractère ? LDX position,s SUBX 1,i ; ajustement du premier caractère LDBYTEX alphabet,sxf; cherche le caractère à la position demandée dans l'alphabet STBYTEX caract,s LDX retour,s ; place l'adresse de retour au bas de la pile STX alphabet,s LDX sauveX,s ; restaure le registre X original ADDSP 6,i ; #retour #sauveX #position RET0 ; table: .ASCII "ABCDEFGHIJKLMNOPQRSTUVWXYZ" demande: .ASCII "Veuillez entrer la position numérique du caractère" .ASCII "\ndans l'alphabet: \x00" caractèr:.ASCII "\nCe caractère est: \x00" .END