Aprendi a programar em assembly na Universidade mas utilizamos uma emulação do processador 8086 da intel, não tenho conhecimento de como funciona a sintaxe do assembly nas arquiteturas x86_64 nem no modelo da intel e da At&t atual,
onde posso encontrar um material que me leve rapidamente a entender as sintaxe? Já tenho conhecimento sobre o funcionamento da linguagem assembly e arquitetura de computadores e não espero voltar a ler manuais do zero…
Bom, não é exatamente um guia, mas pode vir à ser útil. Você pode escrever um código em C e para ver o assembly gerado por ele, compile-o com o gcc usando a seguinte sintaxe:
Basicamente isso irá parar o processo de compilação do arquivo file.c na hora em que o gcc for chamar o assemblador. Isso irá gerar um arquivo “file.s”, onde file é o nome do arquivo de código que você está compilando.
Substitua dialet pelo dialeto que você quer usar para gerar o assembly. Substitua dialet por “intel” caso queira ver o código na sintaxe “intel” e “att” caso queira ver na sintaxe AT&T. A opção att é a default.
Não sei se o compilador do Visual Studio tem um recurso parecido, mas você pode consultar a documentação do mesmo para mais detalhes.
matheuslmota muito obrigado pela sugestão já conhecia o parâmetro -S mas tinha exatamente o problema com o dialeto já que estou estudando o assembly para processadores intel, ajudou bastante mas inda sim busco um guia de referencia rápido que tive-se o datasheet das instruções mais utilizadas dos processadores intel atuais, tenho o datasheet disponibilizado no site da intel mas é muito extenso e pouco objetivo, falando de muitas características de hardware ao invés de seguir um padrão didático.
Se alguém souber de um material como o que eu procuro poste, agradeço muito.
[quote=DavidUser]matheuslmota muito obrigado pela sugestão já conhecia o parâmetro -S mas tinha exatamente o problema com o dialeto já que estou estudando o assembly para processadores intel, ajudou bastante mas inda sim busco um guia de referencia rápido que tive-se o datasheet das instruções mais utilizadas dos processadores intel atuais, tenho o datasheet disponibilizado no site da intel mas é muito extenso e pouco objetivo, falando de muitas características de hardware ao invés de seguir um padrão didático.
Se alguém souber de um material como o que eu procuro poste, agradeço muito.[/quote]
Veja se esse livro te ajuda:
http://www.amazon.com/Intel-Microprocessors-The-8th-Edition/dp/0135026458.
[quote=DavidUser]matheuslmota muito obrigado pela sugestão já conhecia o parâmetro -S mas tinha exatamente o problema com o dialeto já que estou estudando o assembly para processadores intel, ajudou bastante mas inda sim busco um guia de referencia rápido que tive-se o datasheet das instruções mais utilizadas dos processadores intel atuais, tenho o datasheet disponibilizado no site da intel mas é muito extenso e pouco objetivo, falando de muitas características de hardware ao invés de seguir um padrão didático.
Se alguém souber de um material como o que eu procuro poste, agradeço muito.[/quote]
mas esse datasheet é documentação de hardware. Até nos menores microcontroladores a documentação é dessa maneira. Lidar com assembly é trabalhar com hardware.
[quote=juliocbq][quote=DavidUser]matheuslmota muito obrigado pela sugestão já conhecia o parâmetro -S mas tinha exatamente o problema com o dialeto já que estou estudando o assembly para processadores intel, ajudou bastante mas inda sim busco um guia de referencia rápido que tive-se o datasheet das instruções mais utilizadas dos processadores intel atuais, tenho o datasheet disponibilizado no site da intel mas é muito extenso e pouco objetivo, falando de muitas características de hardware ao invés de seguir um padrão didático.
Se alguém souber de um material como o que eu procuro poste, agradeço muito.[/quote]
mas esse datasheet é documentação de hardware. Até nos menores microcontroladores a documentação é dessa maneira. Lidar com assembly é trabalhar com hardware.[/quote]
Entendo mas não estou querendo trabalhar com um MIPS ou outro controlador com I.S. limitados, quero um datasheet com Instruction Set basicos sem os comandos de multimidia que mudam com muita frequencia.
Caso possa ajudar poste, muito obrigado pela atenção.
O correto é você pegar este PDF:
http://download.intel.com/products/processor/manual/325462.pdf
e ler só a parte que lhe interessa. Leia principalmente a parte 1 dele (Basic Architecture) e pule aquela parte de MMX e outras coisas (se bem que, na prática, se você realmente for mexer com Assembly, eu diria que isso é mais importante que as outras instruções básicas - já que as instruções básicas o compilador C++ já as gera para você. )