English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
All categories

where assembly language commonly use?

2006-09-29 03:45:42 · 8 answers · asked by Vanessa 2 in Computers & Internet Programming & Design

8 answers

Assembly language is used all the time on every computer. Any time you write code in a top level language like c, the debugger is translating it into an assembly language. An assembly language is the language of 0 and 1 it is the only language any computer or low voltage electronic devices understand. In the real world there aren't very many usages to it as it is pretty hard and lengthy to program in it. However there are several places where one will be forced to use it. When working on mainframe computers like TPF from IBM most people like to write their code in MIPS which is a little higher version of assembly. When working on any software that is designed to directly interact with hardware on the most basic level an assembly language would be a requirement.

2006-09-29 04:11:04 · answer #1 · answered by yairs2000 3 · 0 0

Assembly language consists of mnemonics which are string tokens for the instructions that the processor an undertsand.

Advanatages of using assembly are :
1. In general the assembly code written is more optimised than a code written in higher language. Though this also depends on the skill of the programmer.
2. It is releatively easier to make an assembler which would directly convert assemnbly mnemonics to instuction code rather than a compiler which first construct assembly code and then convert it to the executable.

Disadvantages are:
1. Assembly is hard to learn, debug and code.
2. Assembly is very close to the hardware. So it is not portable.

Assembly language would often be used depeneding on environment you are working on:
1. Directly working on a device : Consider you are writing a application for a calculator. There would not be many companies writing a compiler for this calculator. So you would have to end up in coding in assembly because a.) Lack of developement tools b) Need for efficiency since you would want to write as compact code as possible.
2. Debugging without code: There are scenarios you would have to debug an already running application and may be even fix it without restarting those applications such as servers. It is possible to code in assembly and patch the assembly code into the memory. It is also helpful in hacking applications.
3. Making use of undocumented features in OS: Sometimes there are someundocumented features in OS such as specific interrupts. Often the compilers would not let you make use of these features since these are undocumented, so you would have to code in assembly.
4. Performance : Currently high level compilers allow assembly code to be written in combination with the high level languages. So for writing any module where you require efficiency such as writing a memory management module for OS you can write that part of the code in assembly.

2006-09-29 04:44:45 · answer #2 · answered by Achint Mehta 3 · 1 0

Assembly language is a low level language which is assembled into machine language which is used in programmable integrated circuits (PICs) and processor chips.

Yes it is commonly used. Typically used by Electronic Engineers for embedded systems, and also by other programmers for larger systems. Embedded systems can be anywhere. Any modern household device such as an electric iron could have an embedded system it to provide more functionality. A digital watch is an embedded system.

You can 'emulate' the function of a chip before you 'blow' the actual chip, on an emulator. This is for simulation of the chip and testing your code.

An assembler is used to 'blow' your chip. It is much like a compiler for high level language. Typically you are writing assembly to define your pins as either output, input or toggle(used in serial applications), then providing some kind of function with those. There are other types of definitions such as comparator, analogue, etc. What you can do with your assembly is largely determined by the limitations of the particular chip you are assembling. PICs need clock circuits (sometimes inbuilt) to give the run time, which can be also used to create delays and timing applications from your assembly.

There are various types of chips that can be ‘blown’ either once, several times, or many times. UV erasable was the first to be able to wipe the memory using a UV light. With the invention of FLASH you have be able to rewrite hundred of thousands of time if not more. Modern flash can be rewritten in blocks, which has made it an extremely popular as a portable and non-volatile memory source using in anything from cameras to phones. In some products like PDAs flash cards are sold not simply as storage but to provide a function such as a modem. These cards are assembled using assembly language.

*edit* yairs2000 post is a bit misleading assembly language is not 0s and 1s that is machine language. Assembly language is assebled into machine language

2006-09-29 04:33:11 · answer #3 · answered by dt01pqt_pt 2 · 0 0

Not often these days thank goodness. You're working a lot closer to the hardware, so have a lot more control of the PC and components in assembly. It also takes loads of code to do anything useful. It is blindingly fast though. You might use assembler to write device drivers, access hardware features not available in your regular language, or to speed up a critical section of your program.

2006-09-29 04:11:07 · answer #4 · answered by Jeremy E 3 · 0 0

mostly @ lower level hardware micro controllers. like older mobile phones, PDA's which have very less memory available and are supposed to perform only a specific set of tasks rather than be multipurpose or general

2016-03-26 22:36:22 · answer #5 · answered by Anonymous · 0 0

It is used as in toy electronics, too complex to be used in today's computers.

The only advantage it can offer is speed; but speed is critical in some tasks. Especially if the task is implemented by very old computer hardware.

2006-09-29 04:30:54 · answer #6 · answered by Andy T 7 · 0 0

interms it is also called as LLL (low level language)
like 8085,8086 these are assemblers uses assembly level laguage

2006-09-29 03:58:04 · answer #7 · answered by Mr.Perfect 2 · 0 0

it is used in embadded programming.. programing of micro chips.. as it can easily communicate to hardware directly at the loweset level

2006-09-29 03:57:11 · answer #8 · answered by Raja Raheel 2 · 0 0

fedest.com, questions and answers