Accueil > Réalisations > Publications > Ouvrages > Ouvrages sur la HP48 s/sx > HP48 Machine Language - A Journey to the Center of the HP48 s/sx - Read the (...)

HP48 Machine Language - A Journey to the Center of the HP48 s/sx - Read the book online

mardi 12 juin 2007, par Paul Courbis

If you don’t want to download the book, you can read it online here...

A paper version of this book is avalable via Amazon !

hp48ml - page 210 - Courbis, acteur de l'Internet depuis 1988
Section prcdente : Programming in Machine Language Page prcdente Sommaire Page suivante Section suivante : Notice

Programming in Machine Language

(c) Courbis www.courbis.fr   210 PARTTWO:M ACHINELANGUAGEh  ttp:  //ww  w.c  our  bis.  com  PD Ff iles  av aila  ble on htt p:// ww  w.c our bis .co m-  Re dis trib  utio  no rm irro rin gs tric  tly pro hib ited  .  ' Thecontentsofcertainregisters :  - D0isthepointertothenextobjecttobeexecuted(afterthe  machinelanguageprogram).Tocontinuetothenextobject afterthemachinelanguageprogramhasfinished,dothis: A=DAT0A,D0=D0+5,PC=(A)(codedas142164808C).  - D1isthestackpointer.IfweexecuteA=DAT1A,fieldAof  registerAcontainstheaddressoftheobjectinlevel1.Ifwe incrementD1by5(D1=D1+5)thenwemovetolevel2(atthis point,theinstructionA=DAT1Awillplacetheaddressofthe objectinlevel2into Afield A).  - BcontainstheaddressofthereturnstackendU*nottoouseful. - Dcontainstheamountoffreememoryinnumberof5nibble  blocks(thesamesizeasthestacklevels).  Unlessyouintendtochangethem,these4registersmustbe restoredtotheiroriginalvaluesbeforeendingtheprogramvia 142164808C.Torestorethem,hereare2usefulroutines:  - SAVE.REG,ataddress#0679Bh(calledwithaGOSBVL  #0679B)savestheseregistersinthereservedRAM.  - LOAD.REG,ataddress#067D2h(calledwithaGOSBVL  #067D2)restorestheregistervaluespreviouslysaved.  ' Thestructuresoftheobjects:Totakeanobjectfromthestack,you  mustknowitsinternalstructuretohandleitproperly.Also,including HP48objectsinyourprogramletsyouprofitfromtheRPLfunctions.  ' TheRAMstructure:ThisisamustifyoueverneedtoaccessRAM.  YoucanalsocallroutinesfoundinROM(e.g.SAVE.REGandLOAD.REG). OneofthebestexercisesinapplyingPartTwoistoanalyzethemachine lan-guageprogramsinthe LibraryofPrograms ,ortodisassemble certainroutinesinROM.  Thenextstepistowriteyourownmachinelanguageprograms.Startwith simpleideas.Forexample,totestthespeedofmachinelanguagepro- grams,youmightcomparetheexecutionspeedsoftwoprograms,onein machinelanguage,oneinRPL.Thistestcouldbetwoprogramsthatsim- plycountto1000(11000STARTNEXT).  PM65-004.p65 11/07/2001,08:46210
Section prcdente : Programming in Machine Language Page prcdente Sommaire Page suivante Section suivante : Notice
© 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.
ipv6 ready ipv6 test
Suivre ce site :
Recommander cette page :
Bookmark and Share
Traduire :