Main.ASMNotes History
Hide minor edits - Show changes to output
Changed line 22 from:
[[http://msdn.microsoft.com/en-us/library/7kcdt6fy(v=vs.80).aspx | Windows x86-64 calling conventions]].
to:
[[http://msdn.microsoft.com/en-us/library/9b372w95%28v=vs.80%29.aspx | Windows x86-64 calling conventions]].
Changed line 22 from:
[[http://msdn.microsoft.com/en-us/library/9b372w95(v=VS.80).aspx | Windows x86-64 calling conventions]].
to:
[[http://msdn.microsoft.com/en-us/library/7kcdt6fy(v=vs.80).aspx | Windows x86-64 calling conventions]].
Changed lines 9-10 from:
to:
Added lines 13-18:
!!Calling conventions
[[http://en.wikipedia.org/wiki/X86_calling_conventions | X86 Calling Conventions]] (Wikipedia). General explanation of various calling conventions.
[[http://www.delorie.com/djgpp/doc/ug/asm/calling.html | Calling conventions]] (DJGPP page).
Changed lines 16-17 from:
[[http://msdn.microsoft.com/en-us/library/9b372w95(v=VS.80).aspx | Windows x86-64 calling conventions]]
to:
[[http://msdn.microsoft.com/en-us/library/9b372w95(v=VS.80).aspx | Windows x86-64 calling conventions]].
Changed line 16 from:
to:
[[http://msdn.microsoft.com/en-us/library/9b372w95(v=VS.80).aspx | Windows x86-64 calling conventions]]
Added lines 14-15:
!!x86-64 ASM
[[http://x86-64.org/documentation/abi.pdf | System V ABI(includes calling conventions among other details)]].
[[http://x86-64.org/documentation/abi.pdf | System V ABI(includes calling conventions among other details)]].
Deleted lines 14-15:
Changed lines 22-26 from:
[[http://pdos.csail.mit.edu/6.828/2011/readings/i386.pdf |Intel 80386 Programmer's Reference Manual]]. An older i386 manual, which is much shorter and easier to read.
to:
[[http://pdos.csail.mit.edu/6.828/2011/readings/i386.pdf |Intel 80386 Programmer's Reference Manual]]. An older i386 manual, which is much shorter and easier to read.
!!General
[[http://pdos.csail.mit.edu/6.828/2011/reference.html | MIT OS Class]].
!!General
[[http://pdos.csail.mit.edu/6.828/2011/reference.html | MIT OS Class]].
Changed lines 18-20 from:
For the instruction set you need the following parts:\\
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer Manual Volume 2A Instruction Set Reference, A-L]].\\
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer Manual Volume 2B Instruction Set Reference, M-Z]].
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer Manual Volume 2A Instruction Set Reference, A-L]].\\
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer Manual Volume 2B Instruction Set Reference, M-Z]].
to:
For the instruction set you need the following parts (Volumes 2A, 2B):\\
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual Volume 2A: Instruction Set Reference, A-L]].\\
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual Volume 2B: Instruction Set Reference, M-Z]].
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual Volume 2A: Instruction Set Reference, A-L]].\\
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual Volume 2B: Instruction Set Reference, M-Z]].
Changed line 19 from:
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer Manual Volume 2A Instruction Set Reference, A-L]].
to:
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer Manual Volume 2A Instruction Set Reference, A-L]].\\
Changed line 18 from:
For the instruction set you need the following parts:
to:
For the instruction set you need the following parts:\\
Changed lines 22-23 from:
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer Manual
Volume 2B Instruction Set Reference, M-Z]].
Volume 2B Instruction Set Reference, M-Z]].
to:
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer Manual Volume 2B Instruction Set Reference, M-Z]].
Changed lines 18-20 from:
For the instruction set you need the following parts:\\
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer Manual
Volume 2A Instruction Set Reference, A-L]].\\
to:
For the instruction set you need the following parts:
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer Manual Volume 2A Instruction Set Reference, A-L]].
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer Manual Volume 2A Instruction Set Reference, A-L]].
Changed lines 19-22 from:
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual
Volume 2A: Instruction Set Reference, A-L]].\\
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual
Volume 2B: Instruction Set Reference, M-Z]].
Volume 2A
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer
Volume 2B
to:
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer Manual
Volume 2A Instruction Set Reference, A-L]].\\
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer Manual
Volume 2B Instruction Set Reference, M-Z]].
Volume 2A Instruction Set Reference, A-L]].\\
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer Manual
Volume 2B Instruction Set Reference, M-Z]].
Changed lines 8-9 from:
to:
.
[[http://ref.x86asm.net/coder32.html#xA6 | ASM/Asm/Assembler opcode reference]].
[[http://ref.x86asm.net/coder32.html#xA6 | ASM/Asm/Assembler opcode reference]].
Changed lines 17-24 from:
[[http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html | Intel 64 and IA-32 Architectures Software Developer Manuals]]. This is the up-to-date manual for the most recent Intel CPUs (it's long).
For the instruction set you need the following parts:
[[http://download.intel.com/products/processor/manual/253666.pdf | 64 and IA-32 Architectures Software Developer's Manual
Volume 2A: Instruction Set Reference, A-L]].
[[http://download.intel.com/products/processor/manual/253667.pdf | 64 and IA-32 Architectures Software Developer's Manual
For the instruction set you need the following parts:
Volume 2A: Instruction Set Reference, A-L]].
to:
[[http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html | Intel 64 and IA-32 Architectures Software Developer Manuals]]. This is the up-to-date manual for the most recent Intel CPUs (it's long). \\
For the instruction set you need the following parts:\\
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual
Volume 2A: Instruction Set Reference, A-L]].\\
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual
For the instruction set you need the following parts:\\
[[http://download.intel.com/products/processor/manual/253666.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual
Volume 2A: Instruction Set Reference, A-L]].\\
[[http://download.intel.com/products/processor/manual/253667.pdf | Intel 64 and IA-32 Architectures Software Developer's Manual
Changed lines 24-29 from:
to:
[[http://pdos.csail.mit.edu/6.828/2011/readings/i386.pdf |Intel 80386 Programmer's Reference Manual]]. An older i386 manual, which is much shorter and easier to read.
Changed lines 17-21 from:
[[http://www.intel.com/content/www/us/en/processors/architectures
to:
[[http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html | Intel 64 and IA-32 Architectures Software Developer Manuals]]. This is the up-to-date manual for the most recent Intel CPUs (it's long).
For the instruction set you need the following parts:
[[http://download.intel.com/products/processor/manual/253666.pdf | 64 and IA-32 Architectures Software Developer's Manual
Volume 2A: Instruction Set Reference, A-L]].
[[http://download.intel.com/products/processor/manual/253667.pdf | 64 and IA-32 Architectures Software Developer's Manual
Volume 2B: Instruction Set Reference, M-Z]].
[[http://pdos.csail.mit.edu/6.828/2011/readings/i386.pdf |Intel 80386 Programmer's Reference Manual]]. An older i386 manual, which is much shorter and easier to read.
For the instruction set you need the following parts:
[[http://download.intel.com/products/processor/manual/253666.pdf | 64 and IA-32 Architectures Software Developer's Manual
Volume 2A: Instruction Set Reference, A-L]].
[[http://download.intel.com/products/processor/manual/253667.pdf | 64 and IA-32 Architectures Software Developer's Manual
Volume 2B: Instruction Set Reference, M-Z]].
[[http://pdos.csail.mit.edu/6.828/2011/readings/i386.pdf |Intel 80386 Programmer's Reference Manual]]. An older i386 manual, which is much shorter and easier to read.
Added lines 14-22:
!!Intel Manuals
This is the up-to-date manual for the most recent Intel CPUs (it's long):
[[http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html | Intel 64 and IA-32 Architectures Software Developer Manuals]].
Changed lines 3-11 from:
[[http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip | PC Assembly Language]]. Paul A. Carter. http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip
[[http://www.delorie.com/djgpp/doc/brennan/brennan_att_inline_djgpp.html | Brennan's Guide to Inline Assembly]]. http://www.delorie.com/djgpp/doc/brennan/brennan_att_inline_djgpp.html
[[http://www.delorie.com/djgpp/doc/ug/asm/calling.html | Calling conventions]]. http://www.delorie.com/djgpp/doc/ug/asm/calling.html
[[http://pdos.csail.mit.edu/6.828/2011/reference.html | MIT OS Class]]. http://pdos.csail.mit.edu/6.828/2011/reference.html
[[http://www
[[http://pdos
to:
[[http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip | PC Assembly Language]]. Paul A. Carter.
[[http://www.delorie.com/djgpp/doc/brennan/brennan_att_inline_djgpp.html | Brennan's Guide to Inline Assembly]].
[[http://www.delorie.com/djgpp/doc/ug/asm/calling.html | Calling conventions]].
[[http://ref.x86asm.net/coder32.html#xA6 | ASM/Asm/Assembler opcode reference]]
[[http://www.cs.lmu.edu/~ray/notes/nasmexamples/ | NASM Examples]].
[[http://pdos.csail.mit.edu/6.828/2011/reference.html | MIT OS Class]].
[[http://www.delorie.com/djgpp/doc/brennan/brennan_att_inline_djgpp.html | Brennan's Guide to Inline Assembly]].
[[http://www.delorie.com/djgpp/doc/ug/asm/calling.html | Calling conventions]].
[[http://ref.x86asm.net/coder32.html#xA6 | ASM/Asm/Assembler opcode reference]]
[[http://www.cs.lmu.edu/~ray/notes/nasmexamples/ | NASM Examples]].
[[http://pdos.csail.mit.edu/6.828/2011/reference.html | MIT OS Class]].
Changed lines 1-4 from:
!Useful resources
[[http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip | PC Assembly Language]]. Paul A. Carter. \\
http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip
http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.
to:
!Reading materials
[[http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip | PC Assembly Language]]. Paul A. Carter. http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip
[[http://www.delorie.com/djgpp/doc/brennan/brennan_att_inline_djgpp.html | Brennan's Guide to Inline Assembly]]. http://www.delorie.com/djgpp/doc/brennan/brennan_att_inline_djgpp.html
[[http://www.delorie.com/djgpp/doc/ug/asm/calling.html | Calling conventions]]. http://www.delorie.com/djgpp/doc/ug/asm/calling.html
[[http://pdos.csail.mit.edu/6.828/2011/reference.html | MIT OS Class]]. http://pdos.csail.mit.edu/6.828/2011/reference.html
[[http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip | PC Assembly Language]]. Paul A. Carter. http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip
[[http://www.delorie.com/djgpp/doc/brennan/brennan_att_inline_djgpp.html | Brennan's Guide to Inline Assembly]]. http://www.delorie.com/djgpp/doc/brennan/brennan_att_inline_djgpp.html
[[http://www.delorie.com/djgpp/doc/ug/asm/calling.html | Calling conventions]]. http://www.delorie.com/djgpp/doc/ug/asm/calling.html
[[http://pdos.csail.mit.edu/6.828/2011/reference.html | MIT OS Class]]. http://pdos.csail.mit.edu/6.828/2011/reference.html
Added lines 1-4:
!Useful resources
[[http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip | PC Assembly Language]]. Paul A. Carter. \\
http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip
[[http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip | PC Assembly Language]]. Paul A. Carter. \\
http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip