------------------------------------------------------------------------------- Object Addr code Symbol Mnemon Operand Comment ------------------------------------------------------------------------------- ; ************************************************************************************* ; Programme: NEWOS2.TXT version PEP813 sous Windows ; ; Version 2: Modifie le nom des mnémoniques: ; NOP0 -> BONJOUR ; NOP1 -> FINAL ; NOP -> LETTRE ; DECI -> LIRENB ; ; Pour implanter ces nouveaux noms, on doit utiliser l'option "Redefine Mnemonics" ; sous l'onglet "System" de PEP/8. ; ; Le nombre lu avec LIRENB doit être numériquement valide, sinon l'utilisateur ; devra le réentrer. Ce nombre doit être compris entre -32768 et 32767. ; ; De plus, il montre l'utilisation de NOP0, NOP1 et NOP. ; ; auteur: Bernard Martin ; code permanent: non applicable ; courriel: martin.bernard@uqam.ca ; date: été 2020 ; cours: INF2171 ; ; Remarque: On doit d'abord installer OS.TXT pour utiliser ces fonctionnalités. ; ************************************************************************************* ; 0000 24 BONJOUR ; Affiche "Bonjour " ; 0001 280001 LETTRE 1,i ; Affiche la 1ère lettre de l'alphabet "A" 0004 28000D LETTRE 13,i ; Affiche la 13e lettre de l'alphabet "M" 0007 280009 LETTRE 9,i ; Affiche la 9e lettre de l'alphabet "I" ; 000A 410030 relire: STRO demande,d 000D 3100DA LIRENB nombre,d ; demande un nombre et le redemande si invalide ("DECI") 0010 120016 BRV déborde ; traitement des débordements 0013 04001C BR affiche 0016 41007B déborde: STRO msgdébor,d 0019 04000A BR relire 001C 410052 affiche: STRO réponse,d 001F 3900DA DECO nombre,d 0022 08002B BRLT negat 0025 41005E STRO positif,d 0028 04002E BR termine 002B 41006C negat: STRO négatif,d 002E 25 termine: FINAL ; Affiche le message de terminaison 002F 00 STOP 0030 0A0A56 demande: .ASCII "\n\nVeuillez entrer un nombre svp: \x00" 657569 6C6C65 7A2065 6E7472 657220 756E20 6E6F6D 627265 207376 703A20 00 0052 0A4C65 réponse: .ASCII "\nLe nombre \x00" 206E6F 6D6272 652000 005E 206573 positif: .ASCII " est positif.\x00" 742070 6F7369 746966 2E00 006C 206573 négatif: .ASCII " est négatif. \x00" 74206E E96761 746966 2E2000 007B 0A4C65 msgdébor:.ASCII "\nLe nombre excède le minimum(-32768) ou le maximum" 206E6F 6D6272 652065 7863E8 646520 6C6520 6D696E 696D75 6D282D 333237 363829 206F75 206C65 206D61 78696D 756D 00AD 0A2070 .ASCII "\n permis(32767).\x00" 65726D 697328 333237 363729 2E00 00BE 0A5665 .ASCII "\nVeuillez le réentrer svp: \x00" 75696C 6C657A 206C65 2072E9 656E74 726572 207376 703A20 00 00DA 0000 nombre: .BLOCK 2 00DC .END ------------------------------------------------------------------------------- Symbol table -------------------------------------- Symbol Value Symbol Value -------------------------------------- affiche 001C demande 0030 déborde 0016 msgdébor 007B negat 002B nombre 00DA négatif 006C positif 005E relire 000A réponse 0052 termine 002E -------------------------------------- -------------------------------------------------------- Résultat de l'exécution: -------------------------------------------------------- Bonjour AMI Veuillez entrer un nombre svp: a Ce nombre n'est pas numérique, veuillez le réentrer svp: - Ce nombre n'est pas numérique, veuillez le réentrer svp: -32769 Le nombre excède le minimum(-32768) ou le maximum permis(32767). Veuillez entrer un nombre svp: 32769 Le nombre excède le minimum(-32768) ou le maximum permis(32767). Veuillez entrer un nombre svp: -1 Le nombre -1 est négatif. Fin normale du programme.