Assembleur 64 avec le compilateur nasm
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment : -28%
Brandt LVE127J – Lave-vaisselle encastrable 12 ...
Voir le deal
279.99 €

Alignement et nommage des données

Aller en bas

Alignement et nommage des données Empty Alignement et nommage des données

Message par Admin Jeu 1 Déc - 21:07

Il est nécessaire de prendre l'habitude d'aligner les données dans les sections .data et .bss. En effet cela peut influencer sur la performance de l'UC.
Les qwords (8octets) doivent être alignés sur une frontière de 8 octets. Donc les mettre en premier derrière la declaration de la section.
Les dwords (4octets) sur une frontière de 4 octets.
Les words (2 octets) sur une frontière de 2 octets.

Les structures utilisées par l'API Windows doivent être alignées sur une frontière de 8 octets.

Vous pouvez utiliser la directive align pour aligner correctement les données.

Remarque : j'ai rencontré un problème avec l'instruction align 8 pour les structures quand on la code comme ceci
Code:

toto: align 8  istruc
Nasm aligne bien la structure mais toto ne pointe pas sur le début de la structure alignée Crying or Very sad
J'ai été obligé de coder comme ceci
Code:

totoa align 8
toto istruc

Pour le nommage des variables en assembleur, il est possible de respecter une certaine normalisation :
Ecrire les constantes en majuscules : exemple MB_OK ou MAXI equ 1000
Commencer les noms des variables par les inititiales de leur type :
qCompteur pour un quadruple mot, dCpt1 pour un double mot, wCPT2 pour un word et bZone pour un byte
s pour une chaine (string en anglais), sz pour une chaine terminée par zero.
h pour les handles de l'API et pt pour des pointeurs.


Admin
Admin
Admin

Messages : 38
Date d'inscription : 28/11/2016

https://assembleur64.kanak.fr

Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum