Index du forum




Un petit coup de main... Vous pouvez nous aider à mettre ce site à jour: n'hésitez pas à me contacter !!!

* Connexion   * Inscription

* FAQ
Nous sommes actuellement le 30 Nov 2025, 16:51

Index du forum » Z80 Coding

Le fuseau horaire est UTC+1 heure


Quelques petites fautes dans l'OCR ?

Modérateur: poulette73



Publier un nouveau sujet Répondre au sujet  Page 1 sur 1
 [ 9 message(s) ] 
  Aperçu avant impression Sujet précédent | Sujet suivant 
Auteur Message
ced64k
 Sujet du message : Quelques petites fautes dans l'OCR ?
Message Publié : 28 Jan 2012, 11:38 
Hors-ligne
Rulez
Rulez
Avatar de l’utilisateur

Inscription : 21 Nov 2011, 15:26
Message(s) : 45
Localisation : Chièvres, Belgique
Je suis en train de faire l'autoformation assembleur dr watson. Il y a de temps en temps des petites fautes dans l'OCR. Par exemple :

https://cpcrulez.fr/codingBOOK_watson_ch02.htm

Code :
------------------------------------------------
!  CASE      !  NUMERO    !  CODE  !  CODE     !
! MÉMOIRE    ! DE LIGNE   ! OBJET  ! SOURCE    !
------------------------------------------------
!  7530      !   10       !        ! ORG 30000 !
!  7530      !   20       ! 3E53   ! LD A,83   !
!  7532      !   30       ! C33673 ! JP 30006  !
!  7535      !   40       ! C9     ! RET       !
!  7536      !   50       ! C601   ! ADD A,1   !
!  7538      !   60       ! CD5ABB ! CALL 47962!
!  753B      !   70       ! 70     ! JP 30005  !
------------------------------------------------


La dernière ligne devrait être

Code :
!  753B      !   70       ! C33575     ! JP 30005  !


PROGRAMME 2.2
Code :
ORG 30000
LD C,10
LD A,65
CALL 47962
DEC C
JR NZ,30004
RET


L'avant dernière ligne devrait être

Code :
JR NZ,30001


Non ?

Ou alors c'est fait exprès parce que j'essaie d'apprendre l'assembleur, pour que je reste attentif et découvre les erreurs :D


Haut
 Profil  
 
hERMOL
 Sujet du message : Re: Quelques petites fautes dans l'OCR ?
Message Publié : 28 Jan 2012, 14:25 
En ligne
Site Admin
Avatar de l’utilisateur

Inscription : 20 Août 2007, 18:21
Message(s) : 5103
pour ce qui est du jr nz,30004 il est juste !
Je modifie le tableau, thk


Haut
 Profil  
 
ced64k
 Sujet du message : Re: Quelques petites fautes dans l'OCR ?
Message Publié : 28 Jan 2012, 16:15 
Hors-ligne
Rulez
Rulez
Avatar de l’utilisateur

Inscription : 21 Nov 2011, 15:26
Message(s) : 45
Localisation : Chièvres, Belgique
hERMOL a écrit :
pour ce qui est du jr nz,30004 il est juste !


T'es sûr ? Parce que juste après il est écrit : "Cet opérateur teste l'état actuel du flag zéro et fait un saut relatif (Jumps Relative) à 30001 si la dernière instruction arithmétique a un résultat non-zéro."


Haut
 Profil  
 
hERMOL
 Sujet du message : Re: Quelques petites fautes dans l'OCR ?
Message Publié : 28 Jan 2012, 17:18 
En ligne
Site Admin
Avatar de l’utilisateur

Inscription : 20 Août 2007, 18:21
Message(s) : 5103
ok, j'ai pas lu la suite, a vu d'oeil je pensais que c'était une bête boucle, mais la ca reinit les variables d'entrée de la routine 47962 avant de la re-exécuter.


Haut
 Profil  
 
fano
 Sujet du message : Re: Quelques petites fautes dans l'OCR ?
Message Publié : 28 Jan 2012, 17:28 
Hors-ligne
VIP
VIP
Avatar de l’utilisateur

Inscription : 15 Août 2008, 13:00
Message(s) : 968
Localisation : Troyes, France
Ah bon ? si tu sautes en 30001 tu vas retomber sur un ld A,(BC) (le "10" de ld C,10 te donne cette instruction), ça me semble peu cohérent surtout si il est suivi d'un ld A,65 à moins de voir le reste du code (bien sur c'est pas impossible mais c'est plutot un trick comme les conditionnal RST ou les instructions casées dans les opérandes d'un jr/jp)

jr nz,30004 me semble tout de même plus logique à défaut d'autres éléments puisque tu vas retomber bien proprement sur ton call.

_________________
"NOP" tel est le programme parfait ! court, rapide, lisible et sans bugs (connus)


Haut
 Profil  
 
Plissken
 Sujet du message : Re: Quelques petites fautes dans l'OCR ?
Message Publié : 28 Jan 2012, 19:13 
Hors-ligne
Rulezzzz
Rulezzzz
Avatar de l’utilisateur

Inscription : 13 Nov 2007, 16:09
Message(s) : 911
Localisation : Gallifrey
Ce serais pas mieux d'avoir les adresses en hexa ?

_________________
Tout le monde il es beau,tout le monde il est gentil .


Haut
 Profil  
 
ced64k
 Sujet du message : Re: Quelques petites fautes dans l'OCR ?
Message Publié : 28 Jan 2012, 22:41 
Hors-ligne
Rulez
Rulez
Avatar de l’utilisateur

Inscription : 21 Nov 2011, 15:26
Message(s) : 45
Localisation : Chièvres, Belgique
Bon ok j'ai rien dit pour ce 30004, c'est correct, je n'avais pas tout lu :)

Citer :
Observons le programme, la seule ligne qui n'a pas été encore rencontrée est JR NZ. Cet opérateur teste l'état actuel du flag zéro et fait un saut relatif (Jumps Relative) à 30001 si la dernière instruction arithmétique a un résultat non-zéro. Ainsi le programme met le contenu de l'accumulateur sur l'écran, DECremente le registre C et vérifie si le flag zéro a été mis par l'instruction de DECrémentation. S'il ne l'a pas été, autrement dit si c'est Non Zéro, il fait alors un saut relatif a 30004, sinon il va à la ligne suivante du programme où il RETourne au programme principal (ici le Basic).


Sinon pour les chiffres en décimal, l'auteur dit avoir mis ça pour ne pas perturber le lecteur avec l'hexadécimal au début. Un peu étrange en effet parce que tous les bouquins commencent justement par ça.


Haut
 Profil  
 
ced64k
 Sujet du message : Re: Quelques petites fautes dans l'OCR ?
Message Publié : 16 Fév 2014, 20:33 
Hors-ligne
Rulez
Rulez
Avatar de l’utilisateur

Inscription : 21 Nov 2011, 15:26
Message(s) : 45
Localisation : Chièvres, Belgique
J'ai encore trouvé une faute dans ce tableau, à la 3ième c'est C33675 et pas C33673.

Code :
 
    !  7532      !   30       ! C33673 ! JP 30006  !

D'ailleurs c'est expliqué un peu plus loin
Citer :
Donc, en commençant par 30000, qui contient '3E', nous avons 53, C3, 36, 75, C9, et puis C6.


Haut
 Profil  
 
hERMOL
 Sujet du message : Re: Quelques petites fautes dans l'OCR ?
Message Publié : 17 Fév 2014, 08:12 
En ligne
Site Admin
Avatar de l’utilisateur

Inscription : 20 Août 2007, 18:21
Message(s) : 5103
:JC_doubleup:


Haut
 Profil  
 
Afficher les messages publiés depuis :  Trier par  
Publier un nouveau sujet Répondre au sujet  Page 1 sur 1
 [ 9 message(s) ] 

Index du forum » Z80 Coding

Le fuseau horaire est UTC+1 heure


Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 21 invité(s)


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Aller vers :  
cron
Powered by phpBB® Forum Software © phpBB Group
Traduit en français par Maël Soucaze.