Re: General Use of ASM



On 24 Aug 2006 14:24:01 -0700, "sleeper" <spamtrap@xxxxxxxxxx> wrote
in comp.lang.asm.x86:

hello everyone,

I am starting to learn ASM, and I was just curious what do most people
use ASM for? Is there a particular market that requires ASM
programming skills? I wanted to learn a lot about drivers, and my
friend suggested that I learn ASM to help me debug device drivers.. is
he accurate?

Thanks

No matter what processor, operating system, and high-level language
you use, there are just some things that can't be done any other way.

For example, say you are writing the task switching part of a
scheduler. It must preserve the entire context of a preempted task
(registers, stack, flags, etc.), and then load the entire context of
the new task that will start running. It is just not possible to do
this in a standard high level language, not even a system programming
language like C.

In other cases, there are special processor instructions, like MMX and
SSE on Pentiums, MAC operations on DSPs, and others, that can greatly
speed up certain expensive calculations. In some cases, some
compilers provide some ways to access some of these processor
features, but even with the best compiler you can use all of them if
you write some code in assembly.

Some people, including many of the regular posters here, use as much
assembly language as they can. For the most part, on Windows based
PCs, this is a personal preference and a matter of pride that they can
do what most other programmers cannot.

I can appreciate their skill, even if I don't really share their
opinion. These days I write as little assembly language and as much
high level language as possible. I would say that there is very
little job market for programming general purpose Windows GUI
applications strictly in assembly language.

As for whether you need assembly language skills to debug device
drivers, that depends to a great extent on the operating system the
drivers are for and the tools you use.

--
Jack Klein
Home: http://JK-Technology.Com
FAQs for
comp.lang.c http://c-faq.com/
comp.lang.c++ http://www.parashift.com/c++-faq-lite/
alt.comp.lang.learn.c-c++
http://www.contrib.andrew.cmu.edu/~ajo/docs/FAQ-acllc.html

.



Relevant Pages

  • Re: Rene cant handle AoAs Success
    ... HLL, mostly an imperative one like JAVA or C++. ... are HLL-knowledge which is a not required detour for true ASM coders. ... Complex programming needs detailed knowledge of the matter, ... if you choose assembly language as your first programming ...
    (alt.lang.asm)
  • Re: assembly language and reverse engineering
    ... I've done some programming in a few languages in the past, ... Not much asm, and it's been a while, so I'd ... know that understanding assembly language is key, ... mov eax, ...
    (alt.lang.asm)
  • Re: Rene cant handle AoAs Success
    ... Knuth, Pispalis, Dunteman, and/or similar books. ... are HLL-knowledge which is a not required detour for true ASM coders. ... HLLs before assembly language. ... Complex programming needs detailed knowledge of the matter, ...
    (alt.lang.asm)
  • assembly language and reverse engineering
    ... I've done some programming in a few languages in the past, ... Not much asm, and it's been a while, so I'd ... know that understanding assembly language is key, ... or should I start off with high level Windows ...
    (alt.lang.asm)
  • Re: TMA Assembler?
    ... I wish I was as good as Rene in ASM, but there is still some way to go, ... If "I am HLA" then I'm definitely the one to argue with. ... The actual assembly language ...
    (alt.lang.asm)