Assembly language - computer architecture, Computer Engineering

Assignment Help:

Assembly language:

An assembly program has a series of instructions--mnemonics that relate to a stream of executable instructions, when translated by an assembler that may be loaded into memory and then executed.

For an example, an x86/IA-32 processor may execute the following binary instruction as expressed in machine language (see x86 assembly language):

  • Binary: 10110000 01100001 (Hexadecimal: B0 61)

The equivalent assembly language representation is simpler to remember (example in the Intel synta x, more mnemonic):

  • MOV AL, 61h

Means of this instruction:

  • Move the value 61h (or 97 decimal; the h-suffix means hexadecimal; into the processor register named "AL".

The mnemonic "mov" represents the opcode 1011 which moves the value in the second operand into the register specified by the first operand. The mnemonic was selected by the instruction set designer to abbreviate "move", by making it easier for the programmer to remember.  A comma-separated list of parameters or arguments follows the opcode; it is a typical assembly language statement.

In practice many programmers drop the word mnemonic and which is technically incorrect, call "mov" an op code. When they do this they are referring to the underlying binary code which it represents. To put it as a way, a mnemonic such as "mov" is not an op code, but it symbolizes an op code, one can refer to "the op code mov" for instance when one intends to refer to the binary op code it symbolizes rather than to the symbol -- the mnemonic -- itself. As few modern programmers have required being attentive of actually what binary patterns are the op codes for specific instructions, the distinction has in practice become a bit blurred among programmers but not among processor designers.

An assembler transforms assembly language into machine language, and the reverse by disassemble. There is typically a one-to-one correspondence between assembly statements unlike in high-level languages, and the machine language instructions. But, in some cases, an assembler can provide pseudo instructions which expand into various machine language instructions to provide commonly required functionality. For instance, for a machine that lacks a "branch if greater or equal" instruction, an assembler can be used a pseudo instruction that expands to the machine's "branch if zero (on the result of the set instruction)"and "set if less than" and. All the full-featured assemblers also provide a rich macro language mostly (discussed below) which is used by programmers and vendors to generate more difficult code and data sequences.

Each processor architecture and computer architecture has its own machine language. On this level, each instruction is enough simple to be executed by using a relatively small number of electronic circuits. Computers differ by the type and number of operations they support. For instance, a new 64-bit machine would have different circuitry from a 32-bit machine. They can also have different sizes and numbers of registers and different representations of data types in storage. Whereas most general-purpose computers are able to carry out really the same functionality, the ways they do so differ; the equivalent assembly languages reflect these differences.

Multiple sets of assembly-language syntax or mnemonics may exist for a single instruction set, typically instantiated in different assembler programs. In these types of cases, the most popular one is usually that supplied by the manufacturer and used in its documentation.


Related Discussions:- Assembly language - computer architecture

Explain the quantization error of an ADC, Explain the Quantization error...

Explain the Quantization error of an ADC. Ans. Quantization error- An analog voltage is within the range of 0 to 1V and for 3 bit output, the size of all intervals are

What is meant by context switch, What is meant by context switch?  Swit...

What is meant by context switch?  Switching the CPU to another process requires saving the state of the old process and loading the saved state for the new process. This task i

Brief explanation of all elements in activity diagrams, ? Activities: An ac...

? Activities: An activity shows an action that performed in the system. ? Transitions: Transitions are shown by open arrow heads. Transitions are used to specify the flow among

Define the key features of hop field neural networks, a. Define the Key fea...

a. Define the Key features of Hop field Neural Networks. b. Compare and contrast among Neural Networks and Expert systems in terms of knowledge representation, acquisition and e

Determine in brief about laptop computers, Laptop computers Laptop comp...

Laptop computers Laptop computers have the obvious advantage over desk-top computers (PCs) in that they are fully portable. This is of specific value if a user wishes to do wor

E- commerce technology and web design, In this assignment, you are required...

In this assignment, you are required to develop part of a B2C e-Commerce site which is an online movie reservation system for a multiplex theatre. Through the developed site, the u

Matlab, Use the colon operation to create a vector x of numbers -10 through...

Use the colon operation to create a vector x of numbers -10 through 10 in steps of 1. Use matrix operations to create a vector y where each element is 5 more than 2 times the corre

Why a task cannot return a value, Why a task can n ot return a value? ...

Why a task can n ot return a value? If tasks can return values then Let's take a look at the below example. A=f1(B)+f2(C); and f1 and f2 had delays of say 5 and 10? Whe

What is verilog function, What is Verilog function - A function is una...

What is Verilog function - A function is unable to enable a task however functions can enable other functions. - A function would carry out its required duty in zero simula

Example of finding cross points and switches, For a non blocking crossbar c...

For a non blocking crossbar configuration, taking N as the number of subscribers, there will be               number of cross points and _             number of switches for est

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd