J'ai besoin de trier un tableau et de trier chaque rangée dans le tableau pour être dans l'ordre croissant. Je ne semble pas aller si bien (surprise!) Que je continue à me frapper avec deux erreurs:Utilisation de valeurs relatives dans le tri de matrices (asm)
a2101: ne peut pas ajouter deux étiquettes délocalisables et A2026: attendu
constante Voici mon genre, il fait Je pense que je suis toujours en train d'essayer de mettre en œuvre des technologies linguistiques de haut niveau dans l'assemblage. Y at-il un moyen de contourner ne pas être en mesure d'utiliser des valeurs relatives? (le tableau est de 7 lignes par 9 colonnes, btw).
mov cx, 7; cx = number of rows
outer: ; outer loop walk through the rows
push cx
mov cx, 9
mov row, cx ;rows
middle: ; middle-loop walk through the columns
push cx
sub cx, 1 ;cx = cx-1
mov column, cx ;columns
inner: ;inner loop - compare and exchange column values
cmp mArray[row*9 + column], mArray[row*9 + column+1]
xchg mArray[row*9 + column+1], mArray[row*9 + column]
; compare and exchange values from mArray table
inc column
loop inner
pop cx
loop middle ;end middle loop
pop cx
loop outer ; end outer loop
ret
Merci pour toute aide.