What is a good Assembler?
That was a *really* loaded question. :)
Do you want to make Windows programs? MASM32
Do you want to make DOS, Windows, Linux, or system-level programs, or a bootloader/OS? NASM + TextPad (Harder to implement Win32 API)
Quote from: Joex86] link=topic=8769.msg111435#msg111435 date=1173325505]
That was a *really* loaded question. :)
It's not really a loaded question (http://en.wikipedia.org/wiki/Loaded_question) so much as a vague one since the question doesn't presuppose a truth...
Ah. But yeah, you know what I meant though. :)
yeah, you'll have to be more specific.
I generally program assembler as inline in a C program. Depending on what you're doing, that may or may not work for you.
Uh, Sorry I'm just starting to learn assembly, um, Windows programs I guess :D
MASM.
Quote from: Joex86] link=topic=8769.msg111435#msg111435 date=1173325505]
That was a *really* loaded question. :)
Do you want to make Windows programs? MASM32
Do you want to make DOS, Windows, Linux, or system-level programs, or a bootloader/OS? NASM + TextPad (Harder to implement Win32 API)
Pfft, masm is lame. Nasm 4 lyfe. Masm is for newbs who don't know native x86 assembly, and are only smart enough to use the lame macros in it, like "IF/THEN". If you're gonna code in asm, why the hell would you want to use masm? It sux y0.
Warrior, stop using MASM. If you don't, best watch yo back nigga. I'ma roll 6 deep on yo hood, and yo whole family if you don't use nasm or fasm. After them hollow points burst through yo chest, I watch with satisfaction as you bust into a spasm. That's another reason you don't use masm, children. I got an AK-47 with magnum armor piercing shells, yo.
Stop feeding The Man, he only wants you to use MASM32.
Quote from: cheeseisfun on March 08, 2007, 06:45:22 PM
Quote from: Joex86] link=topic=8769.msg111435#msg111435 date=1173325505]
That was a *really* loaded question. :)
Do you want to make Windows programs? MASM32
Do you want to make DOS, Windows, Linux, or system-level programs, or a bootloader/OS? NASM + TextPad (Harder to implement Win32 API)
Pfft, masm is lame. Nasm 4 lyfe. Masm is for newbs who don't know native x86 assembly, and are only smart enough to use the lame macros in it, like "IF/THEN". If you're gonna code in asm, why the hell would you want to use masm? It sux y0.
Warrior, stop using MASM. If you don't, best watch yo back nigga. I'ma roll 6 deep on yo hood, and yo whole family if you don't use nasm or fasm. After them hollow points burst through yo chest, I watch with satisfaction as you bust into a spasm. That's another reason you don't use masm, children. I got an AK-47 with magnum armor piercing shells, yo.
Stop feeding The Man, he only wants you to use MASM32.
laff@u
Quote from: cheeseisfun on March 08, 2007, 06:45:22 PM
Quote from: Joex86] link=topic=8769.msg111435#msg111435 date=1173325505]
That was a *really* loaded question. :)
Do you want to make Windows programs? MASM32
Do you want to make DOS, Windows, Linux, or system-level programs, or a bootloader/OS? NASM + TextPad (Harder to implement Win32 API)
Pfft, masm is lame. Nasm 4 lyfe. Masm is for newbs who don't know native x86 assembly, and are only smart enough to use the lame macros in it, like "IF/THEN". If you're gonna code in asm, why the hell would you want to use masm? It sux y0.
Warrior, stop using MASM. If you don't, best watch yo back nigga. I'ma roll 6 deep on yo hood, and yo whole family if you don't use nasm or fasm. After them hollow points burst through yo chest, I watch with satisfaction as you bust into a spasm. That's another reason you don't use masm, children. I got an AK-47 with magnum armor piercing shells, yo.
Stop feeding The Man, he only wants you to use MASM32.
Rofl. I love you.
Quote from: dlStevens on March 08, 2007, 12:14:37 PM
Uh, Sorry I'm just starting to learn assembly, um, Windows programs I guess :D
It sort of depends what you're writing it for. Personally, I've never written an assembly program (not entirely true, but we'll go with it). I've read a lot of assembly, and I know enough to do a lot with it, but to actually sit down and write a program is rather useless. Nobody does it. At the very least, you write a C function in assembly, which is fairly different.
If you want to learn to reverse engineer/hack, then all you really need to do is learn how to read assembly, not write it. If you're interested in learning how to read assembly a bit, touch base with me on the weekend and I can show you some simple functions that I generally save for teaching people.
Quote from: iago on March 08, 2007, 10:53:54 PM
Quote from: dlStevens on March 08, 2007, 12:14:37 PM
Uh, Sorry I'm just starting to learn assembly, um, Windows programs I guess :D
It sort of depends what you're writing it for. Personally, I've never written an assembly program (not entirely true, but we'll go with it). I've read a lot of assembly, and I know enough to do a lot with it, but to actually sit down and write a program is rather useless. Nobody does it. At the very least, you write a C function in assembly, which is fairly different.
If you want to learn to reverse engineer/hack, then all you really need to do is learn how to read assembly, not write it. If you're interested in learning how to read assembly a bit, touch base with me on the weekend and I can show you some simple functions that I generally save for teaching people.
People do write entire programs in asm. Whole operating systems have been written in ASM. ask warrior about this. i've written programs in asm, too. not only to learn, but because i actually like asm. it's a lot more fun to write in asm than it is to write a program in C, in my opinion. it's more raw, and you feel more in tune with the technology at hand. it's leet, too. ok?
Quote from: cheeseisfun on March 15, 2007, 09:42:17 PM
People do write entire programs in asm. Whole operating systems have been written in ASM. ask warrior about this. i've written programs in asm, too. not only to learn, but because i actually like asm. it's a lot more fun to write in asm than it is to write a program in C, in my opinion. it's more raw, and you feel more in tune with the technology at hand. it's leet, too. ok?
*nod*
I have significant experience with both, and they're both just as in tune. But with very, very few exceptions, anything you can do in assembler you can also do in C.
A useful operating system hasn't been written in assembler since the 60's - 70's when C was invented. The huge advantages to C is:
* It's portable
* It's faster (to write)
* It's faster (to run -- a good optimizing compiler can optimize way better than a human)
iago is right, writing anything large in assembly is pretty foolish. It pins you against the C Compiler and it's optimizations and most likely you will not win.
Quote from: iago on March 08, 2007, 10:53:54 PM
If you want to learn to reverse engineer/hack, then all you really need to do is learn how to read assembly, not write it. If you're interested in learning how to read assembly a bit, touch base with me on the weekend and I can show you some simple functions that I generally save for teaching people.
Could you make a thread out of it? It'd save you several reiterations, and I'm sure there're a few of us interested. I think you'd draw more interest (and save some time and redundant, derivative subject matter) if you assumed an amateur audience, as opposed to novice. I may have some information to include that would be considered useful.