les éléments suivants sont les codes de langue d'assemblage d'un sic/machine .... xeprogrammation en langage assembleur sicxe
clear a
ldx #128
loop jsub getc
rmo a,s
shift s,4
jsub getc
addr s,a
stch 0,x
tixr x,x
j loop
getc td input
jeq getc
rd input
comp #4 ;if input is 4 then eof
jeq 80 ;jump to start of program
comp #48 ; compare to charcter 0
jlt getc ;skip charcters less than 0
sub #48
comp #10 ;if result is less than 10, conversion is complete
jlt return
sub #7 ;for hex digits A through F
return rsub
input byte x'F1'
c'est un chargeur d'amorçage ... le but de ce programme est de lire de l'appareil F1 et stocker l'entrée à l'adresse à partir de 80 ... maintenant ma question est que quand le pourquoi avons-nous besoin de faire des changements s, 4 ... lorsque nous prenons une entrée une fois, nous trouvons sa valeur d'origine de sa valeur ASCII puis envoyer il faut 'boucler' pour le stocker ... du programme il apparaît que seulement le premier octet de chatacter est envoyé en boucle puis l'autre ... si c'est le fait alors dans un premier il y aurait le premier demi-octet de charcter et ainsi les opérations ASCII sur le premier semestre ne nous donnera pas la valeur réelle de l'entrée ... aussi w orsque le programme revient à « getc » pour obtenir l'autre moitié octet ne sera pas l'autre caractère dans la liste lu à la place ... ce qui suit est une ligne du même livre pour aider ...
each byte of the code to be loaded is on device F1 as two hexadecimal digits
Vous avez besoin d'une étiquette 'homework'? –