Resultados da pesquisa a pedido "att"

2 a resposta

montagem em linha c obtendo "incompatibilidade de tamanho do operando" ao usar cmpxchg

Estou tentando usar cmpxchg com assembly embutido através de c. Este é o meu código: static inline int cas(volatile void* addr, int expected, int newval) { int ret; asm volatile("movl %2 , %%eax\n\t" "lock; cmpxchg %0, %3\n\t" "pushfl\n\t" ...

2 a resposta

Montando binários de 32 bits em um sistema de 64 bits (cadeia de ferramentas GNU)

Eu escrevo o código do assembly que pode ser compilado: as power.s -o power.ohá um problema quando eu vinculo o arquivo de objeto power.o: ld power.o -o powerPara rodar no sistema operacional de 64 bits (Ubuntu 14.04), adicionei.code32 no ...

10 a resposta

O que os sinais de dólar ($) e porcentagem (%) representam na montagem x86?

stou tentando entender como a linguagem assembly funciona para uma classe de arquitetura de microcomputador e continuo enfrentando diferentes sintaxes nos exemplo sub $48, %esp mov %eax, 32(%esp)O que esses códigos significam? Qual é o operando ...

1 a resposta

Assembly (,% eax, 4)

Se uma das minhas linhas de comando diz:

1 a resposta

Definindo bytes no assembly embutido do GCC no Dev-C ++ (. Ascii na sintaxe da AT&T no Windows)

O código abaixo está apenas mostrando uma caixa de mensagem na tela. Os endereços são codificados para facilitar: int main () { asm("xorl %eax, %eax \n" "xorl %ebx, %ebx \n" "xorl %ecx, %ecx \n" "xorl %edx, %edx \n" "pushl %ecx \n" //$0x0 "pushl ...

4 a resposta

O que o cltq faz na montagem?

0x0000000000400553 <main+59>: mov -0x4(%rbp),%eax 0x0000000000400556 <main+62>: cltq 0x0000000000400558 <main+64>: shl $0x3,%rax 0x000000000040055c <main+68>: mov %rax,%rdx Na verdade, meu programa é tão simples quanto: 5 int main(int argc, char ...

2 a resposta

Montagem - Como multiplicar / dividir uma constante por outra constante na montagem?

Então, eu tenho uma função assembly, chamada C. Ele compila e não me dá avisos, mas quando tento executá-la, isso gera uma falha de segmentação. Eu acho que é porque não consigo mover uma constante para um registro, mas para usar o comando mul / ...

2 a resposta

Como interpretar este endereço -0x80 (% rbp,% rax, 4)

No momento, estou tentando aprender a linguagem assembly (e os efeitos de diferentes opções de compilador) analisando snippets de código C simples. Agora eu ...

1 a resposta

Não é possível mover variáveis em .data para registros com o Mac x86 Assembly

Escrevi uma pequena peça de montagem com a sintaxe da AT&T e atualmente declarei três variáveis no.data seção. No entanto, quando tento mover qualquer uma dessas variáveis para um registro, como%eax, um erro degcc é criado. O código e a mensagem ...

1 a resposta

print int ascii no assembly 64 bits em & t float number error

Eu escrevi um programa solo apenas para descobrir como fazer isso, antes adicionei 48 ao número a ser impresso, mas agora, quando obtenho números maiores que 9, não é mais suficiente. Portanto, o programa a seguir deve colocar 23 em my temp, ...