Re: General Use of ASM
- From: Jack Klein <jackklein@xxxxxxxxxxx>
- Date: Thu, 24 Aug 2006 20:51:38 -0500
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
.
- References:
- General Use of ASM
- From: sleeper
- General Use of ASM
- Prev by Date: Re: OpCode hex codes
- Next by Date: Re: enabling x87 interrupts
- Previous by thread: General Use of ASM
- Next by thread: Re: General Use of ASM
- Index(es):
Relevant Pages
|