Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Sign In with Facebook Sign In with Google Sign In with OpenID

Categories

We have migrated to a new platform! Please note that you will need to reset your password to log in (your credentials are still in-tact though). Please contact lee@programmersheaven.com if you have questions.
Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

Recommended ASM 80x86 Reference :: ASM

kuphrynkuphryn Posts: 266Member
Hi.

I began learning ASM programming a couple of weeks ago. I really enjoy 16bit ASM programming, although I prefer C++. Nonetheless, ASM forces me to appreciate higher level level including C++. It would be nice to be able to disassembly any program and see what really goes on under the binary code.

What is a good reference book covering 16bit and 32bit 80x86 ASM programming?

Thanks,
Kuphryn
«1

Comments

  • DariusDarius Posts: 1,666Member
    [b][red]This message was edited by Darius at 2002-9-16 22:59:50[/red][/b][hr]
    : Hi.
    :
    : I began learning ASM programming a couple of weeks ago. I really enjoy 16bit ASM programming, although I prefer C++. Nonetheless, ASM forces me to appreciate higher level level including C++. It would be nice to be able to disassembly any program and see what really goes on under the binary code.
    :
    : What is a good reference book covering 16bit and 32bit 80x86 ASM programming?
    :
    : Thanks,
    : Kuphryn
    :

    The Art of Assembly (there's a DOS, Win32, and Linux version). I recommend reading the DOS version first. The Linux and Win32 versions are identical (to each other, not to the DOS version) last I checked. Anyways, the URL webster.ucr.edu.

    "We can't do nothing and think someone else will make it right."
    -Kyoto Now, Bad Religion



  • kuphrynkuphryn Posts: 266Member
    Okay. Thanks.

    Most responses I received mentionee "The Art of Assembly." I will definitely print a copy, read it, and learn about ASM via "The Art of Assembly."

    Kuphryn
  • CeltakCeltak Posts: 7Member
    I also want to learn 32-bit assmebly...
    I am an experience C++ coder, and love working in C++.. but i feel that assembly for X86 would be a nice touch to learn....

  • kuphrynkuphryn Posts: 266Member
    Yeah. ASM programming is fun. Part of the fun has to do with the fact that you know what is going on whereas with C/C++ you depend more on the compiler.

    32bit ASM should be exciting too, although I am learning 16bit ASM righ tnow.

    Kuphryn
  • kuphrynkuphryn Posts: 266Member
    What are some important differences between 16bit ASM programming and 32bit ASM programming?

    I am studying 16bit ASM because I feel it is the foundation for 32bit ASM. At least that is how programming with high-level languages work. For example, we learn C/C++ before learning Win32 API and MFC.

    Kuphryn
  • DariusDarius Posts: 1,666Member
    : What are some important differences between 16bit ASM programming and 32bit ASM programming?
    :
    : I am studying 16bit ASM because I feel it is the foundation for 32bit ASM. At least that is how programming with high-level languages work. For example, we learn C/C++ before learning Win32 API and MFC.
    :
    : Kuphryn
    :

    That's because you can't program Win32 API or MFC without first knowing C/C++. The same is definitely not true of 16-bit and 32-bit x86 assembly. 32-bit assembly isn't 'on top of' 16-bit assembly as MFC is a layer above C++.

    16-bit assembly is actually more difficult than 32-bit assembly (well more 'more of a pain in the ass', than 'more difficult'). Really the main difference is memory layout. 32-bit application level code usually has one giant flat memory layout.

    However, typically 32-bit application level code doesn't have direct access to the hardware. If you want to mess around with hardware (for your own entertainment and education) then typically using 16-bit DOS is easiest (the alternative would be to write device driver code).

    "We can't do nothing and think someone else will make it right."
    -Kyoto Now, Bad Religion

  • kuphrynkuphryn Posts: 266Member
    Interesting. Thanks.

    Kuphryn
  • kuphrynkuphryn Posts: 266Member
    Thanks.

    Kuphryn
  • emu8086emu8086 Posts: 125Member
    for 16bit ASM programming you may be interested in emu8086:

    emu8086 combines an advanced source editor, assembler, disassembler, software emulator (Virtual PC) with debugger, and step by step tutorials.

    http://www.programmersheaven.com/search/download.asp?FileID=20562
«1
Sign In or Register to comment.