Ir para conteúdo

Apanhadão de Assembly


void_

Posts Recomendados

Criei esse tópico na intenção de reunirmos livros, apostilas, videoaulas e qualquer outro tipo de material relevante sobre programação em Assembly e arquiteturas de computadores. Como muita gente se interessa por Assembly – seja por questões de exploração binária, engenharia reversa ou qualquer outro motivo – mas não encontra muito material relevante – atual – sobre o assunto, já que tem muita gente “moderninha” que não se interessa por Assembly e diz que a linguagem está morta – e o pior: muita gente cai nessa –, acredito que um compilado de material sobre o assunto possa vir a calhar.

Nota: Apesar de todo material sobre Assembly ser bem-vindo, a intenção é priorizar a arquitetura de 64 bits, por ser a mais atual. Contudo, por motivos de legado e curiosidade, vale tudo. Eu vou priorizar a arquitetura x86-64 em sistemas Linux, pois nunca programei em Assembly em ambientes Windows, mas cada um contribui com o que tem e o que sabe. Nenhum sistema ou arquitetura deve ficar de fora, se possível.

Vamos começar com esse: x86-64 Assembly Language Programming with Ubuntu

Trata-se de um livro totalmente gratuito, com foco na arquitetura Intel x86-64 e voltado para Linux, especificamente para o Ubuntu – sistema corriqueiro quando se trata de “Linux Doméstico”. Tem um total de 357 e trata-se de uma obra bem introdutória, que progride em um ritmo agradável – nem muito lento, nem muito rápido –, além de ser bem direto. É ideal para quem está começando.

 

Link para o comentário
Compartilhar em outros sites

Low Level Programming

Edição em inglês do livro "Programação em Baixo Nível", do Igor Zhirkov, em formato pdf (Não achei em português, sorry). Ele não aborda apenas Assembly, mas também C e uma combinação das duas linguagens, além de uma abordagem rica em arquiteturas. Tem quase 580 páginas e, apesar da fama de casca grossa dele, trata-se de um excelente livro, que te impulsiona a pesquisar mais, correr atrás e deixa claro para você que a bibliografia não está lá só de enfeite. Não é um livro recomendado para quem não tem noção nenhuma de programação/lógica, mas é perfeito como acréscimo para quem já leu algo básico e/ou é conhecedor de outras linguagens. Trata-se de uma obra muito técnica, bem escrita e é um dos livros melhores livros atuais que li sobre o assunto -- minha opinião, claro.

Notas:

1 - Eu não achei o link original do pdf, então eu upei ele "na unha". Se o link expirar, me avisem que eu subo de novo.

2 - Obra voltada para a Arquitetura x86-64 e sistemas Linux. O set de ferramentas usadas são basicamente: vim, nasm, ld, gdb, gcc e make.

Link para o comentário
Compartilhar em outros sites

Introduction to  64 Bit  Intel Assembly Language Programming for Linux

É uma publicação de 2011 de Ray Seyfarth. Esse eu não li "para valer" ainda, mas pelo pouco que folheei, serve de intermediário entre a primeira e a última obra que postei anteriormente (O princípio é o mesmo: Intel64 para Li nux).

Link para o comentário
Compartilhar em outros sites

Um livro muito legal é o do xorpd, entitulado  "xchg rax, rax". Pois é, o nome do autor já uma instrução e o nome do livro é outra. rs

Só tem snippets em Assembly nele, sem comentários ou texto. O leitor deve descobrir o que o snippet faz. Custa $10 na Amazon a versão impressa, mas ele pode ser lido inteirinho no site do autor, que aliás também vale uma lida. ?

Link para o comentário
Compartilhar em outros sites

Modern X86 Assembly Language Programming

Um dos poucos pdfs que tenho sobre Assembly Intel64 no Windows. Sinceramente eu nunca cheguei a ler, uma vez que eu nunca programei em Assembly no Windows, mas acredito que seja útil para quem deseja programar nessa plataforma (685 páginas devem ensinar algo de bom...). Autoria de Daniel Kusswurm.

Link para o comentário
Compartilhar em outros sites

Alguém aí tem um link para "Fundamentos em Programação Assembly", do José Manzano? Sei que é meio antigo, mas gostaria de recuperar esse livro de alguma forma. Já tive ele em cópia física quando era mais moleque, mas sinceramente não sei que diabos aconteceu com ele, uma vez que eu nunca mais achei...

Link para o comentário
Compartilhar em outros sites

2 minutos atrás, void_ disse:

Alguém aí tem um link para "Fundamentos em Programação Assembly", do José Manzano? Sei que é meio antigo, mas gostaria de recuperar esse livro de alguma forma. Já tive ele em cópia física quando era mais moleque, mas sinceramente não sei que diabos aconteceu com ele, uma vez que eu nunca mais achei...

O Manzano comentou no nosso vídeo sobre Assembly:

Citar

Olá, Primeiramente quero agradecer a indicação. Sou autor deste livro que ao longo dos anos após seu lançamento foi sendo melhorado e hoje está na sétima edição e poderá ser encontrado no site da Editora Érica: https://www.editoraerica.com.br/assembly. Se for sua primeira compra no site poderá ter um desconto de 25% utilizando o promocode "PRIMEIRACOMPRA25%". É importante esclarecer que o livro é voltado para iniciantes em programação Assembly. O texto não foi pensado para usuários avançados. Abraços.

Abraço!

Link para o comentário
Compartilhar em outros sites

Assembly programming book collection

Torrent com muita coisa. Muita coisa, mesmo. Segue a lista:

AMD's Athlon Assembler Optimization Guide (PDF)
Art Of Assembly Language Programming In Linux x86.zip
Art of Assembly Language Programming (PDF)
Assembler Intel Code Table (PDF)
Assembly Language for Intel-Based Computers, Fourth Edition.iso
Barry B. Brey, The Intel Microprocessors. 8th 0135026458 (PDF)
Barry Kauler, Winsows Assembly Language and System Programming 1997 (PDF)
Bob Neveln, Linux Assembly Language Programming 2000 (PDF)
Bryant, O'Hallaron, Computer Systems. A Programmer's Perspective (PDF)
Chris Eagle, The IDA Pro Book 2nd Edition (EPUB)
Chris Eagle, The IDA Pro Book 2nd Edition (PDF)
Comprehensive PMode Tutorials with C & ASM.zip
Daniel W. Lewis, Fundamental of embedded software. Where C and assembly meets (DJVU)
Dan Kaminsky, Reverse Engineering With IDA Pro (PDF)
Dean Elsner, Jay Fenlanson, Using as 2.19 (PDF)
Developing Utilities in Assembly Language.zip
Harlan Carvey, Reverse Engineering Code with IDA Pro (PDF)
Intel, Assembler - Englisch - x86 Assembly Instruction Set Reference (PDF)
James Leterman, 32-64-BIT 80 x 86 Assembly Language Architecture (CHM)
James T. Streib, Guide to Assembly Language (PDF)
Jeff Duntemann, Assembly Language Step-by-Step Programming with DOS and Linux 2nd ed 2000 (CHM)
Jeff Duntemann, Assembly Language Step by Step [Wiley] (PDF)
Jeff Dunteman, Wiley Assembly Language Step by Step Programming with Linux 3rd 2009 (PDF)
John R. Levine, Linkers and Loaders (PDF)
Jonathan Bartlett, Programming from the Ground Up (PDF)
Kip R. Irvine, Assembly Language for Intel-Based Computers. 4th (PDF)
Kip R. Irvine, Assembly Language for X86 processors-15 BIOS Level Programming (PDF)
Kip R. Irvine, Assembly Language for X86 processors (PDF)
Knaggs, Welsh, ARM: Assembly Language Programming 2004 (PDF)
Kris Kaspersky, Hacker Disassembling Uncovered (2003) (CHM)
Michael Abrash, The zen of assembly language (PDF)
M. Rafiquazzaman, Microprocessor Theory and applications with 68000, 68020 and Pentium (PDF)
Patrick Juola, Principles of Computer Organization and Assembly Language. Using the Java Virtual Machine (PDF)
Paul Carter, PC Assembly language 2006 (PDF)
Pavol Cerven, Crackproof Your Software (PDF)
PC Intern, The Encyclopedia of System Programming.rar
PC Underground, Assembly Language; The True Language of Programmers (PDF)
Pete Cockerell, ARM Assembly Language Programming (PDF)
Peter Calingaert, Assemblers, Compilers, and Program Translation (DJVU)
Randal Hyde, The Art Of Assembly Language 2003 (CHM)
Randal Hyde, Write Great Code Understanding the Machine Volume I (CHM)
Randal Hyde, Write Greate Code Vol: 2. Thinking Low-Level, Writing High-Level. 2006 (PDF)
Randall Hyde, The Art of Assembly Language 2nd (EPUB)
Randall Hyde, The Art of Assembly Language 2nd (PDF)
Ray Seyfarth, Introduction to 64 Bit Intel Assembly Language Programming for Linux-EXTRA.zip
Ray Seyfarth, Introduction to 64 Bit Intel Assembly Language Programming for Linux (PDF)
Richard Blum, Professional Assembly Language. Wrox 2005 (PDF)
Richard C. Detmer, 80x86 Assembly Language and Computer Architecture (PDF)
Richard C. Detmer, Introduction to 80X86 Assembly Language and Computer Architecture 2001 (CHM)
Richard P. Paul, Sparc Architecture, Assembly Lan (PDF)
Robert Britton, Mips Assembly Language Programming 2003 Prentice-Hall (PDF)
Sivarama P. Dandamudi, Guide to Assembly Language Programming in Linux (PDF)
Sivarana D. Dandamundi, Introduction to Assembly Language Programming. For Pentium and RISC (PDF)
THE 8088 and 8086 MICROPROCESSORS Triebel and Singh 4e Solution Manual (PDF)
The Assembly Programming Master Book by Vlad Pirogov 2005 (CHM)
Tom Shanley, x86 Instruction Set Architecture (PDF)
Tom Swan, Mastering Turbo Assembler. 2nd (PDF)
Vincent Mahout, Assembly Language Programming- ARM Cortex-M3 (PDF)
Vlad Pirogov, Disassembling Code: IDA Pro and SoftICE (CHM)
Wikibooks, X86 Disassembly (PDF)
Link para o comentário
Compartilhar em outros sites

  • Apoiador Nibble
Em 07/06/2019 em 08:55, void_ disse:

Alguém aí tem um link para "Fundamentos em Programação Assembly", do José Manzano? Sei que é meio antigo, mas gostaria de recuperar esse livro de alguma forma. Já tive ele em cópia física quando era mais moleque, mas sinceramente não sei que diabos aconteceu com ele, uma vez que eu nunca mais achei...

Eu tenho a versão pdf em algum lugar.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...