Micro Systèmes n°49 janvier 1985
Micro Systèmes n°49 janvier 1985
  • Prix facial : 24 F

  • Parution : n°49 de janvier 1985

  • Périodicité : mensuel

  • Editeur : Société Parisienne d'Edition

  • Format : (203 x 271) mm

  • Nombre de pages : 198

  • Taille du fichier PDF : 137 Mo

  • Dans ce numéro : dossier sur l'ordinateur biologique.

  • Prix de vente (PDF) : gratuit

Dans ce numéro...
< Pages précédentes
Pages : 154 - 155  |  Aller à la page   OK
Pages suivantes >
154 155
gn PROGRAMME UTILITAIRE programme ne comporte pas d'instruction ORG, il est automatiquement implanté à partir de $ICOO. C'est une valeur de défaut.• DEFS a pour effet de réserver un certain nombre d'octets, spécifié par l'opérande, entre l'adresse courante d'assemblage et la prochaine instruction implantée. Cet opérande fait l'objet des mêmes remarques que ORG.• DEFB est utilisée afin d'implanter un ou plusieurs octets contenus dans les données suivant DEFB. Cette P.I. requiert une syntaxe particulière  : DEFB S OCTET,OCTET,...,% OCTET La base numérique des différents octets n'est définie qu'une fois, après DEFB. Celle-ci sera donc valable pour tous les octets considérés, qui devront être écrits à la suite, et séparés par une virgule. Leur nombre n'est pas limité. Les trois systèmes de numération classiques sont disponibles. DEFB $4E,C3,2F,C9,76,FD Cette P.I. est utilisée pour introduire des données en mémoire.• DEFW permet l'implantation d'une constante 16 bits placée après DEFW, et exprimée comme un opérande habituel. Son principal intérêt est de respecter l'inversion des octets (poids faible avant poids fort), caractéristique du Z 80. DEFW $C4AD IMPLANTE AD,C4.• DEFM a pour fonction la mise en mémoire des codes ASCII d'une chaîne de caractères, exprimée après DEFM. Notons que les guillemets sont inutiles, la fin de chaîne étant indiquée par « : », ou, plus simplement, par un RETURN. Les codes sont implantés à partir de l'adresse courante.• *  : cette pseudo-instruction permet l'insertion de commentaires à l'intérieur même d'un programme destiné à l'assemblage. Cette instruction n'a aucun effet proprement dit, mais peut clarifier certains algorithmes obscurs... 154 — MICRO-SYSTEMES Quand elle est utilisée, tout ce qui suit l'astérisque est ignoré  : le programme passe à la ligne suivante.• =  : a déjà été explicité plus haut. Les directives d'utilisation du moniteur de mise au point Celui-ci est composé d'un sous-programme qui, une fois lancé, est en interaction constante avec la ROM du X 07, et ceci que l'appareil soit sous ou hors tension. La mise en fonction du moniteur s'effectue à l'aide d'un EXEC &H2B3D. Un message est alors affiché, indiquant l'état opérationnel. Cet utilitaire dispose de plusieurs commandes qui sont mises en oeuvre par l'appui simultané de CTRL et d'une touche spécifique du clavier ; décrivons-les brièvement.• CTRL Z  : entrée ou sortie du mode autonumérateur de lignes. Celui-ci permet l'édition automatique du numéro de ligne suivant, accompagné de l'apostrophe légitime, à chaque pression de la touche « RE- TURN ». Ceci supprime donc la fastidieuse frappe des numéros devant précéder toute séquence de mnémoniques. Lorsque ce mode est en service, et après une pression sur « RE- TURN », le curseur clignote à la droite de l'apostrophe, signalant l'attente des touches. Pour sortir de ce mode, il est nécessaire de presser à nouveau CTRL Z. Vous êtes, dès lors, de retour à l'éditeur habituel du X 07. CTRL D  : lors d'un appui sur ces touches, l'utilisateur est tenu d'introduire deux paramètres  : le numéro de ligne où commencera la numérotation automatique et le pas d'incrémentation de chaque ligne. Ces entrées seront effectuées de la même façon que deux INPUT séparés. Quand les deux données auront été introduites, le mode autonum sera d'office mis en service. CTRL A  : la pression de ces touches a pour effet de générer 0'**PROGRAMME DE DEM0** 10 C 20'LD HU.#UR 30'LD A.R:XOR $A5 40'LD CHLLA:PUSH HL 50'#AGCALL $EBF2:RST 10:CALL $FFCC 60'LD A.E 70'POP HL 80'CP CHL):RET S 90'PUSH HL:LD HL.#MS 100'CALL, $FEF7 110'JR #AG 120'#MSDEFM RATE2:0EFB $0,0,0 130'0UR=S350 140'*APRES ASSEMBLAGE 150'*FAIRE EXEC &H1C00 160 Fig. 3. — Exemple d'assemblage. le code par un appel à l'assembleur. Lors de l'assemblage, différents messages peuvent être affichés  : PASSI sera imprimé lors du début de passe 1. PASS2 sera imprimé lors du début de passe 2 (en surimpression sur PASS I). OK signale que l'assemblage est terminé et qu'il s'est effectué sans erreur. Vous avez donc de nouveau la main. Toutefois, vous pouvez rencontrer des messages d'erreur que nous examinerons plus loin. Lorsque l'erreur est trouvée et réparée, une nouvelle tentative d'assemblage peut être faite. L'appel au logiciel peut aussi être obtenu par EXEC 11087. CTRL 0  : équivaut à une touche RESET. Cette possibilité sera, en effet, bien pratique en cas de crash du système. Elle permettra de conserver programmes et données. Ce RESET a toutefois une autre fonction, qui est de vérifier l'intégrité de l'assembleur à l'aide d'un « CHECKSUM » de celui-ci. Dans cette expectative, OK, puis le message habituel seront affichés. Sinon, le message « 10 ERROR » sera lancé  : il vous faudra alors recharger depuis la cassette. Le cheksum peut être lancé par EXEC 12000. Signification des messages d'erreur Ceux-ci, dont il sera utile de connaître la signification, sont au nombre de neuf. Ils seront toujours accompagnés du numéro de ligne où l'erreur s'est produite, facilitant ainsi la correction. Ils sont lancés durant l'assemblage. SN ERROR  : cette erreur se produit quand il y a une faute de syntaxe, ou de ponctuation. C'est la plus fréquente. [SN ERROR  : l'assembleur n'a pas réussi à localiser le crochet de début de listing.] SN ERROR  : deux possibilités  : ou l'utilisateur n'a pas adjoint le crochet de terminaison, ou l'apostrophe de début de ligne contenant « » a été oubliée.  : SN ERROR  : le symbole séparant deux instructions est absent. IR ERROR  : un des labels utilisés n'a pas été défini dans le programme. OM ERROR  : le nombre maximum de labels utilisables est dépassé (128)  : la place en mémoire manque. Janvier 1985
PROGRAMME UTILITAIRE 10000 REM **CHARGEUR HEXADECIMAL** 11000 N=81H2010 11500 FSET4096:INIT#1,"AS",4069 12000 CK=0 13000 PRINTHEX$CN) 14000 FM•=0T07 15000 LINEINPUTA$ 16000 P=UALC"8 « H"+A$) 17000 POgN,P 18000 N=N+1 19000 CK=CK+P 20000 NEXTT 21000 INPUT"CHECKSUM==>" ; CT 2200 IF CK=CTTHEN12000ELSEN=N-8 23000 BEEP13,10 24000 PRINT"ERREUR DE FRAPPE":GOT012000 Fig. 4. — Chargeur hexadécimal. 0'**CE PRG DOIT Eḷ(E SUIVI PAR L'ASSEM BLEUR** 10 FSET4096:INIT#1,"AS",4069:INIT#2,"CAS I:" 20 POKE8210,76 30 IFINPC#2)<>26THEN30 40 FORN=8211T012280 50 POKEN,INPC#2):NEXT 99 MOTOROFF:CLS:PRINT"Loaded":EXEC12000  : EXEC&H2B30 100 NEW Fig. 5a. — Programme de chargement. 10 INIT#1,"CASO:" 20 FORN=&H200DT012282 30 OUT#1,PEEKCN):NEXT Fig. 5b. — Programme de sauvegarde. MO ERROR  : saut relatif hors d'un nombre décimal trop imde l'intervalle (— 128, + 127)  : portant (de 5 chiffres). l'adresse de destination en est LD HL.&66745 déclenche trop éloignée. cette erreur. 10 ERROR  : lors du CHECK- LD HL.&123456 ne le fait SUM, signale que l'assembleur pas  : seuls les 5 premiers chiflui-même a été altéré.fres sont conservés. La figure 3 OV ERROR  : tentative de char- montre un exemple d'assemgement dans un des registres blage. Janvier 1985 L'implantation du programme Celle-ci sera la dernière tâche fastidieuse à accomplir avant de disposer des facilités de l'assembleur ! Elle pourra toutefois être facilitée par le chargeur hexadécimal présenté figure 4, autorisant la saisie contrôlée de groupes de 8 octets. Le listing hexadécimal est fourni ci-dessous. Le contrôle sur 8 octets permet d'éviter la plupart des erreurs de frappe. Une fois la totalité des codes introduits, il sera indispensable, avant toute tentative, de sauvegarder ce logiciel sur cassette. Les utilitaires de sauvegarde et de recharge sont imprimés figure 5a et 5b. La sauvegarde s'effectue de la façon suivante  : • taper le programme de chargement, puis le copier sur bande ; • juste après celui-ci, sauver le langage machine de l'assem- bleur grâce au programme de la figure 5b (en faire plusieurs de suite). Pour recharger le logiciel, il suffira de positionner la bande sur le premier programme sauvé, de le charger, puis de faire RUN immédiatement, pour que le chargement proprement dit puisse se faire. L'assembleur résidera ensuite sur carte, sous le nom de fichier ‹< AS ». A la fin du chargement, un contrôle de validité sera exécuté. Si le langage machine confère à ce programme une certaine rapidité, il l'empêche aussi par là même d'être relogeable et traduisible sur une autre machine. Ill Bibliographie  : — Programmation du Z 80, Zaks, Sybex. — Z 80 assembly language, Leventhal, McGraw Hill. — Langage machine ZX 81, Chenieres, Informatique Service. 2010 00 80 4C 44 A0 4A 52 AO 620 2018 43 50 A2 A3 49 4E 43 A0 848 2020 44 45 43 A0 43 41 4C 4C 648 2028 A0 44 4A 4E 5A A0 4A 50 784 2030 RO 50 55 53 48 RO 50 4F 799 2038 50 AO 4F 52 47 RO 52 45 783 2040 54 AO 52 45 54 C9 52 45 831 2048 54 CE 52 45 04 DO 4F 55 1038 2050 54 20 49 4E 20 41 2E 578 2058 49 4E A0 41 4E 44 AO 850 2060 4F 52 RO 45 58 20 44 45 847 2068 2E 48 CC 41 44 44 20 41 620 2eM0 AE 41 44 44 RO 44 45 46 742 2078 42 RO 52 53 54 AO 58 4F 802 2080 52 AO 53 55 42 A0 44 C9 905 2088 45 C9 45 58 28 53 50 29 671 2090 RE 48 41 4C 04 4C C4 44 939 2098 45 46 40 A0 44 45 46 57 670 20A0 RO 44 45 46 53 A0 AR 53 863 20A8 42 43 20 48 4C AE 42 49 626 2080 54 AO 53 45 54 A0 52 45 791 20138 53 AO 4A 50 A8 52 4C Cl 916 2000 52 52 Cl 52 4C 43 Cl 52 857 Listing du programme. MICRO-SYSTEMES — 155



Autres parutions de ce magazine  voir tous les numéros


Liens vers cette page
Couverture seule :


Couverture avec texte parution au-dessus :


Couverture avec texte parution en dessous :


Micro Systèmes numéro 49 janvier 1985 Page 1Micro Systèmes numéro 49 janvier 1985 Page 2-3Micro Systèmes numéro 49 janvier 1985 Page 4-5Micro Systèmes numéro 49 janvier 1985 Page 6-7Micro Systèmes numéro 49 janvier 1985 Page 8-9Micro Systèmes numéro 49 janvier 1985 Page 10-11Micro Systèmes numéro 49 janvier 1985 Page 12-13Micro Systèmes numéro 49 janvier 1985 Page 14-15Micro Systèmes numéro 49 janvier 1985 Page 16-17Micro Systèmes numéro 49 janvier 1985 Page 18-19Micro Systèmes numéro 49 janvier 1985 Page 20-21Micro Systèmes numéro 49 janvier 1985 Page 22-23Micro Systèmes numéro 49 janvier 1985 Page 24-25Micro Systèmes numéro 49 janvier 1985 Page 26-27Micro Systèmes numéro 49 janvier 1985 Page 28-29Micro Systèmes numéro 49 janvier 1985 Page 30-31Micro Systèmes numéro 49 janvier 1985 Page 32-33Micro Systèmes numéro 49 janvier 1985 Page 34-35Micro Systèmes numéro 49 janvier 1985 Page 36-37Micro Systèmes numéro 49 janvier 1985 Page 38-39Micro Systèmes numéro 49 janvier 1985 Page 40-41Micro Systèmes numéro 49 janvier 1985 Page 42-43Micro Systèmes numéro 49 janvier 1985 Page 44-45Micro Systèmes numéro 49 janvier 1985 Page 46-47Micro Systèmes numéro 49 janvier 1985 Page 48-49Micro Systèmes numéro 49 janvier 1985 Page 50-51Micro Systèmes numéro 49 janvier 1985 Page 52-53Micro Systèmes numéro 49 janvier 1985 Page 54-55Micro Systèmes numéro 49 janvier 1985 Page 56-57Micro Systèmes numéro 49 janvier 1985 Page 58-59Micro Systèmes numéro 49 janvier 1985 Page 60-61Micro Systèmes numéro 49 janvier 1985 Page 62-63Micro Systèmes numéro 49 janvier 1985 Page 64-65Micro Systèmes numéro 49 janvier 1985 Page 66-67Micro Systèmes numéro 49 janvier 1985 Page 68-69Micro Systèmes numéro 49 janvier 1985 Page 70-71Micro Systèmes numéro 49 janvier 1985 Page 72-73Micro Systèmes numéro 49 janvier 1985 Page 74-75Micro Systèmes numéro 49 janvier 1985 Page 76-77Micro Systèmes numéro 49 janvier 1985 Page 78-79Micro Systèmes numéro 49 janvier 1985 Page 80-81Micro Systèmes numéro 49 janvier 1985 Page 82-83Micro Systèmes numéro 49 janvier 1985 Page 84-85Micro Systèmes numéro 49 janvier 1985 Page 86-87Micro Systèmes numéro 49 janvier 1985 Page 88-89Micro Systèmes numéro 49 janvier 1985 Page 90-91Micro Systèmes numéro 49 janvier 1985 Page 92-93Micro Systèmes numéro 49 janvier 1985 Page 94-95Micro Systèmes numéro 49 janvier 1985 Page 96-97Micro Systèmes numéro 49 janvier 1985 Page 98-99Micro Systèmes numéro 49 janvier 1985 Page 100-101Micro Systèmes numéro 49 janvier 1985 Page 102-103Micro Systèmes numéro 49 janvier 1985 Page 104-105Micro Systèmes numéro 49 janvier 1985 Page 106-107Micro Systèmes numéro 49 janvier 1985 Page 108-109Micro Systèmes numéro 49 janvier 1985 Page 110-111Micro Systèmes numéro 49 janvier 1985 Page 112-113Micro Systèmes numéro 49 janvier 1985 Page 114-115Micro Systèmes numéro 49 janvier 1985 Page 116-117Micro Systèmes numéro 49 janvier 1985 Page 118-119Micro Systèmes numéro 49 janvier 1985 Page 120-121Micro Systèmes numéro 49 janvier 1985 Page 122-123Micro Systèmes numéro 49 janvier 1985 Page 124-125Micro Systèmes numéro 49 janvier 1985 Page 126-127Micro Systèmes numéro 49 janvier 1985 Page 128-129Micro Systèmes numéro 49 janvier 1985 Page 130-131Micro Systèmes numéro 49 janvier 1985 Page 132-133Micro Systèmes numéro 49 janvier 1985 Page 134-135Micro Systèmes numéro 49 janvier 1985 Page 136-137Micro Systèmes numéro 49 janvier 1985 Page 138-139Micro Systèmes numéro 49 janvier 1985 Page 140-141Micro Systèmes numéro 49 janvier 1985 Page 142-143Micro Systèmes numéro 49 janvier 1985 Page 144-145Micro Systèmes numéro 49 janvier 1985 Page 146-147Micro Systèmes numéro 49 janvier 1985 Page 148-149Micro Systèmes numéro 49 janvier 1985 Page 150-151Micro Systèmes numéro 49 janvier 1985 Page 152-153Micro Systèmes numéro 49 janvier 1985 Page 154-155Micro Systèmes numéro 49 janvier 1985 Page 156-157Micro Systèmes numéro 49 janvier 1985 Page 158-159Micro Systèmes numéro 49 janvier 1985 Page 160-161Micro Systèmes numéro 49 janvier 1985 Page 162-163Micro Systèmes numéro 49 janvier 1985 Page 164-165Micro Systèmes numéro 49 janvier 1985 Page 166-167Micro Systèmes numéro 49 janvier 1985 Page 168-169Micro Systèmes numéro 49 janvier 1985 Page 170-171Micro Systèmes numéro 49 janvier 1985 Page 172-173Micro Systèmes numéro 49 janvier 1985 Page 174-175Micro Systèmes numéro 49 janvier 1985 Page 176-177Micro Systèmes numéro 49 janvier 1985 Page 178-179Micro Systèmes numéro 49 janvier 1985 Page 180-181Micro Systèmes numéro 49 janvier 1985 Page 182-183Micro Systèmes numéro 49 janvier 1985 Page 184-185Micro Systèmes numéro 49 janvier 1985 Page 186-187Micro Systèmes numéro 49 janvier 1985 Page 188-189Micro Systèmes numéro 49 janvier 1985 Page 190-191Micro Systèmes numéro 49 janvier 1985 Page 192-193Micro Systèmes numéro 49 janvier 1985 Page 194-195Micro Systèmes numéro 49 janvier 1985 Page 196-197Micro Systèmes numéro 49 janvier 1985 Page 198