All pastes #91664 Raw Edit

Stuff

public text v1 · immutable
#91664 ·published 2006-07-18 20:12 UTC
rendered paste body
xor bx, bx //azzeriamo bx, contatore delle cifre
xor cx, cx //azzeriamo cx che conterrà il simbolo
xor dx,dx //contatore dei bit
<---Loop 16 volte--->
mov ax, [cifra+bx] //leggiamo la bxesima cifra
cmp bx, 0
<---Loop 4 volte--->
jnz successive //se NON è la prima cifra, salta l'impostazione del primo simbolo
mov cx, ax
and cx, 1000 //così in cx abbiamo il simbolo
inc dx
successive:
shl ax, 1 //shift a sinistra di 1 bit
push ax //salvo ax
and ax, cx //faccio l'or se cx = 1000 il bit è uguale se 0000 sono diversi
cmp ax, 1000
pop ax
jz Simbolo_uguale
/*qui metti la funzione per salvare il numero
delle volte che il bit si ripete che è contenuto in dx*/
xor dx, dx //azzeriamo il contatore
xor cx, 1000 //così cambio il simbolo da 1000 a 0000 e da 0000 a 1000
Simbolo_uguale:
inc dx
<--- Fine Loop 16 volte --->
<--- Fine Loop 4 volte --->
ops
xor bx, bx //azzeriamo bx, contatore delle cifre
xor cx, cx //azzeriamo cx che conterrà il simbolo
xor dx,dx //contatore dei bit
<---Loop 16 volte--->
mov ax, [cifra+bx] //leggiamo la bxesima cifra
cmp bx, 0
<---Loop 4 volte--->
jnz successive //se NON è la prima cifra, salta l'impostazione del primo simbolo
mov cx, ax
and cx, 1000 //così in cx abbiamo il simbolo
inc dx
successive:
shl ax, 1 //shift a sinistra di 1 bit
push ax //salvo ax
and ax, cx //faccio l'or se cx = 1000 il bit è uguale se 0000 sono diversi
cmp ax, 1000
pop ax
jz Simbolo_uguale
/*qui metti la funzione per salvare il numero
delle volte che il bit si ripete che è contenuto in dx*/
xor dx, dx //azzeriamo il contatore
xor cx, 1000 //così cambio il simbolo da 1000 a 0000 e da 0000 a 1000
Simbolo_uguale:
inc bx
inc dx
<--- Fine Loop 16 volte --->
<--- Fine Loop 4 volte --->