preguntar acerca de assembly
3
réponses
Que signifie «rep ret»?
Je testais du code sur Visual Studio 2008 et j'ai remarqué security_cookie. Je peux comprendre le but de cela, mais je ne comprends pas quel est le but de cette instruction.
rep ret /* REP to avoid AMD branch prediction penalty */
Bien sûr, je …
demandé sur
1970-01-01 00:33:33
3
réponses
Pourquoi les instructions et sont-elles générées?
Pour un code comme celui-ci:
int res = 0;
for (int i = 0; i < 32; i++)
{
res += 1 << i;
}
Ce code est généré (mode de libération, aucun débogueur attaché, 64bit):
xor edx,edx
mov r8d,1
_loop:
lea ecx,[r8-1]
and ecx,1Fh ; …
demandé sur
1970-01-01 00:33:32
7
réponses
Référence de l’Opcode Intel x86?
Qu'est-ce qu'une méthode relativement rapide et facile de rechercher ce que signifie un opcode arbitraire (par exemple, 0xC8) dans x86?
Le manuel du développeur de logiciels Intel n'est pas très amusant à rechercher... ... …
demandé sur
1970-01-01 00:33:31
4
réponses
Écrire mon propre BIOS
Je ne suis pas fou, juste réinventer la roue: D
J'ai écrit boot-loaders, souris et clavier Mini-pilotes, mini OS et ainsi de suite.
J'essaie toujours d'éviter les interruptions DOS, en utilisant uniquement les bios, en essayant d'avancer un mini …
demandé sur
1970-01-01 00:33:32
2
réponses
Langage d’assemblage — Comment faire Modulo?
Y a-t-il quelque chose comme un modulo-opérateur dans L'assembleur x86? ... …
demandé sur
1970-01-01 00:33:31
3
réponses
Comment les registres fs/gs sont-ils utilisés dans Linux AMD64?
Sur l'architecture x86-64, deux registres ont un but particulier: FS et GS. Dans linux 2.6.* , le registre FS semble être utilisé pour stocker des informations thread-local.
Est-ce exact?
Qu'est-ce qui est stocké à fs: 0? Y a-t-il une structure C …
demandé sur
1970-01-01 00:33:31
2
réponses
Pourquoi le registre PC ARM pointe-t-il vers l’instruction après la suivante à exécuter?
Selon le bras IC.
Dans L'état ARM, la valeur du PC est l'adresse de l'instruction en cours plus 8 octets.
Dans L'État du pouce:
pour les instructions B, BL, CBNZ et CBZ, la valeur du PC est l'adresse de l'instruction courante plus 4 …
demandé sur
1970-01-01 00:33:34
4
réponses
Que signifie le signe dollar ($) dans l’assemblage x86 lors du calcul des longueurs de chaîne comme «$ — label»? [dupliquer]
Cette question a déjà une réponse ici:
Comment $ fonctionne-t-il dans NASM, exactement?
1 réponse
Par exemple, si nous écrivions un programme de type hello …
demandé sur
1970-01-01 00:33:32
1
réponses
Comment fonctionnent exactement les registres partiels sur Haswell/Skylake? Écrire AL semble avoir une fausse dépendance sur RAX, et AH est incohérent
Cette boucle s'exécute à une itération par 3 cycles sur Intel Conroe / Merom, goulot d'étranglement sur le débit imul comme prévu. Mais sur Haswell / Skylake, il s'exécute à une itération par 11 cycles, apparemment parce que {[2] } a une dépendance …
demandé sur
1970-01-01 00:33:37
5
réponses
Débogage D’un programme C (serveur Redis)
Prémisse
Salut,
J'ai reçu plusieurs rapports d'un utilisateur Redis qui a connu des pannes de serveur, en utilisant une version stable de Redis (dernière version, 2.4.6). Le bug est étrange puisque l'utilisateur ne fait pas de choses ésotériques, t …
demandé sur
1970-01-01 00:33:32