hum... je pense que tu as deja visiblement repondu tout seul a ta question.
une simple table de translation suffit. un afficheur 7 segments est en fait composé de 8 leds.
a,b,c,d,e,f,g,h et dp
un caractere hexa quand a lui a 16 solutions. a chaque solution correspond une combinaison particuliere des segments.
donc, il suffit de faire ceci:
table: .0 db combinaison abcdefghdp du 0 .1 db combinasion abcdefghdp du 1 etc etc...
and al,0fh :le nombre hexa est dans les 4 bits de poid faible movzx si,[al] ; al contient le nombre hexa mov al,[si+table] ; et hop, on recupere
mov dx,portparrallele out dx,al ; ecrire dqn le port parallele
voilà, le reste etant de trouver les bonnes valeurs par toi meme.
:)
me: nop ret
|