OT : Assembly Related.

FlyBoy

Well-known member
Joined
Sep 6, 2004
Messages
106
is this possible to know assembly without knowing C++ or C???
i want to learn assembly ...but i dont know C or c++ i only know C#.
i have the Visual C++ (is this ok for writing assembly code?).
 
No, one doesnt need to know C/C++ (or any other language for that matter) to code in assembly. You can write assembly in any text editor. Its the same as any other language when it comes to authoring.
 
As a piece of advice: Theres virtually no reason to learn/code assembler unless you have a very, very specific need. For example, my old university taught assembly for mainframes because a local company needed assembly language programmers to maintain old apps.

assembly is also machine specific. To do anything interesting with assembly, it will probably be OS specific as well.

If you want a free compiler, look at nasm. Microsoft and IBM also make compilers, but nasm seems the most popular.

-ner
 
Nerseus said:
As a piece of advice: Theres virtually no reason to learn/code assembler unless you have a very, very specific need. For example, my old university taught assembly for mainframes because a local company needed assembly language programmers to maintain old apps.

assembly is also machine specific. To do anything interesting with assembly, it will probably be OS specific as well.

If you want a free compiler, look at nasm. Microsoft and IBM also make compilers, but nasm seems the most popular.

-ner

hmm i dont have a specific reason...i just think its good to know assembly isnt it?
so it would be better to spent the time on being better with c# ????
or to start learning JAVA\J2EE?
 
I would think your time would definitely be better spent on almost anything other than learning to program in assembly. It wouldnt hurt to learn the basics of assembly - it helped me understand whats really going on with memory, especially when I later learned C and C++. Its also come in useful on maybe 2 occasions to just read assembly - that 2 occasions in the past 10 or 12 years. Ive never had to write assembly, ever, for anything other than college courses and a few tester programs (also in college).

Im not saying assembly isnt used anymore. But its such a niche language with very limited usage. Ive seen it mostly used in certain critical areas of game programming. And you wouldnt write core parts of a game in assembly - you would do analsys when the program is complete (or close) and maybe optimize those areas where hand-tuned assembly might provide a worthwhile gain.

-ner
 
I took it in college.

took about 14x as long to do something "command line" as VB6/C# would take. Thats just manipulating keyboard input and screen output.

Remember, youre literally using memory. Youre reading memory blocks, youre writing values to them, assigning where in which register you want to push/pop values into/from, etc.

Fascinating Boredom will ensue. Its good to know how the memory and internals really work - but at some point its just so dry and were so spoiled. When youve just written your first Point of Sales system for recording ticket sales and reservations for a playhouse in Visual Basic - the last thing you want to do is study for weeks on end to display text, turn memory values into ASCII (and visa versa) and what the gritty rules are for how to move memory around, when, how.

Oh, since youre actually working IN memory, you screw up and you can crash your computer (not kill it, just crash it). Not like VB/C# where you get a runtime error or the IDE might stop responding... literally you can cause memory conflicts... and if youre really working with memory and have other apps open, you can accidently conflict with them causing irregularities in their running.

oh, and you at least need to know how to convert base 10 number systems over to base 12 (decimal to hex) and visa versa. I dont recall if binary was that important... I think the more recent Calc.exes for windows can help you with that information. I recall needing to learn ASCII values as well.

Assembly was pretty much useful for programming machines without operating systems. Now even devices from fridgerators to palms (scanners, PDAs, inventory control) run on operating systems (Palm OS or Windows CE/Pocket mostly) so thats still in use, though a very niche market.
 
Back
Top