Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why do programmers confuse the term "assembler" with "assembly"? [closed]

As programmers we need to be precise with our verbal and written communication. Why do so many programmers confuse the term "assembler" (the object code generator) with "assembly" (the language you program in)?

The distinction is unambiguous. Could there be historical explanation?

like image 204
sourcenouveau Avatar asked Jun 13 '09 16:06

sourcenouveau


People also ask

What is the difference between a assembler and assembly?

The assembly is a piece of code/executable that is in machine executable code. This might be an obj, exe, dll, ... It is the result of a compile. The assembler is the "compiler" that compiles code into machine executable code.

Do programmers still use assembly?

Today, assembly language is still used for direct hardware manipulation, access to specialized processor instructions, or to address critical performance issues. Typical uses are device drivers, low-level embedded systems, and real-time systems (see § Current usage).

Why do programmers still use assembly language?

Assembly languages are also often used by programmers wanting greater control over their computers as assembly languages allow you to directly manipulate your hardware. Because of its speed and importance, some programs are specifically written using assembly language as the code can usually remain smaller.

Why is assembly not used?

And just remember: in many cases, assemblers are no longer used. This is because many high-level languages compile into CIL and then directly into machine language; they bypass the need for assembly altogether.


1 Answers

I'd guess it's because it's so much quicker to say "assembler" than "assembly language." I remember a lot of people saying "ML" in the 80s. I liked "ML." Nice and short, and it sounds like it could be one of Superman's relatives.

"Assembly language" is long and awkward. It sounds like a term that might have come out of the UN. "Assembler" has a nice "blood and guts" feel that matches the experience of low-level programming.

The usage of "assembler" to mean "assembly language" has been around for decades. "Written in assembly language" just barely beats "written in assembler" in a Google fight, so on the usage front I'd say either is valid. "Code Complete 2" uses the term "assembler" in the description of languages section.

You get many historically interesting pages if you search for "written in 68000 assembler," "written in 6502 assembler," etc.

The usage is mentioned on wikipedia.

Note that, in normal professional usage, the term assembler is often used ambiguously: It is frequently used to refer to an assembly language itself, rather than to the assembler utility. Thus: "CP/CMS was written in S/360 assembler" as opposed to "ASM-H was a widely-used S/370 assembler."

Words often have multiple meanings. English is not assembler.

like image 121
Nosredna Avatar answered Oct 14 '22 10:10

Nosredna