Accueil > Réalisations > Publications > Ouvrages > Ouvrages sur la HP48 g/gx > Voyage au centre de la HP48 g/gx - Lire le ligne en ligne

Voyage au centre de la HP48 g/gx - Lire le ligne en ligne

jeudi 14 juin 2007, par Paul Courbis

Si vous ne voulez pas télécharger l’ensemble de l’ouvrage, vous pouvez le lire en ligne ici...

Si vous désirez une version papier, un « reprint » est disponible via Amazon !

Voyage48g - page 274 - Courbis, acteur de l'Internet depuis 1988
Section précédente : Programmer en langage-machine Page précédente Sommaire Page suivante Section suivante : Avertissement

Programmer en langage-machine

(c) Courbis www.courbis.fr   Fichiers pdf disponibles sur http://www.courbis.comRedistribution/mirroring strictement interdits  Version 3.05  http:  //ww  w.co  urbis  .com  Page 268 Programmer en langage-machine Chapitre 9  On sait que ce sont les adresses des objets qui sont stock e'esdans la pile. Pour acc e'der  a` l'objet  a` cr e'er, il convient donc de prendre l'adresse @ qui est dans la pile et de la remplacer par@+14h (pour passer le prologue, la longueur, le nombre de colonnes et le nombre de lignes).  Or il existe un appel par  SYSEVAL qui r e'alise cette fonction. Cetappel en #056B6h prend en entr e'e l'objet et un 'system integer' contenant le nombre de cases de 5 quartets  a` passer et renvoie lenouvel objet ainsi qu'un 'external' qui ne nous est pas utile ici.  Nous devons passer 4 cases de 5 quartets (le prologue duGROB, sa taille, son nombre de lignes et son nombre de colonnes), il nous faut donc un 'system integer'  e'gal  a` 4. Un tel objet eststocke' en me'moire morte a` l'adresse #04017h.  La transformation du GROB en objet se fera donc par lase'quence :  #4017h SYSEVAL #56B6h SYSEVAL DROP Le premier SYSEVAL rappelle le 'system integer' dans la pile, lesecond effectue la transformation.  La dernie`re action  a` faire est de recr e'er l'objet de mani e`re a` ceque la re'fe'rence dans la pile soit vraiment une r e'fe'rence a` un objet en tant que tel (et non plus a` un contenu).  Cette recre'ation se fait tr e`s simplement par la fonction  NEWOB quirecre'e l'objet au niveau 1 de la pile, en modifiant toutes les re'fe'rences le concernant...  On obtient donc finalement le programme GASS (GASS commeGraphic ASSembleur) :  GGGGAAAASSSSSSSS '  'GROB 8 ' OVER SIZE 2 / + ' ' + SWAP + OBJc, #4017h SYSEVAL #56B6h SYSEVAL DROP NEWOB -a  Ce programme est tr e`s rapide car la transformation des chiffreshexade'cimaux en quartets est r e'alise'e par des programmes en me'moire morte eux-me^mes e'crits en langage-machine...
Section précédente : Programmer en langage-machine Page précédente Sommaire Page suivante Section suivante : Avertissement
© Courbis 1988-2010
Tous droits réservés
Permalien
Faire un don avec Paypal Le livre est entièrement gratuit mais vous pouvez
avec Paypal pour participer aux frais d'hébergement de ce site... Merci !

Messages

Un message, un commentaire ?

modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Les spams donneront systématiquement lieu à dépôt de plainte. Les messages peu aimables ou comportant trop de fautes d'orthographe seront purement et simplement supprimés sans publication. Aucune obligation de publication ne pourra être opposée au webmaster, sauf éventuel droit de réponse dûment justifié.
ipv6 ready ipv6 test
Suivre ce site :
Recommander cette page :
Bookmark and Share
Traduire :