Assembly language, Assembly Language

Assignment Help:

Assembly Language:

Inside the 8085, instructions are really stored like binary numbers, not a very good manner to look at them and very difficult to decipher. An assembler is a program that permits you to write instructions in, more or less, English form, much more simply read and understood, and after that converted or assembled into hex numbers and at last into binary numbers.

The program is written with a text editor (NOTEPAD or similar), saved like an ASM file, and then assembled by the assembler (TASM or MASM or similar) program. The end result is an OBJ file you download to the 8085. Here is an instance of the problem of adding 2 plus 2 :

mvi A,2; move 2 into the A register

mvi B,2; move 2 into the B register

add B; add reg. B to reg. A, store result in reg. A

The first line moves a 2 into a register A. The second line moves a 2 into a register B. it is all the data we require for the program. The third line adds up the accumulator with register B and holds the result back into the accumulator, destroying the 2 that were originally in it. The accumulator contains a 4 in it now and B still contains a 2 in it. In the program above all text after the ';' are treated as comments, and not executed. It is a very significant habit to acquire.

Assembly language follows some rules that we shall describe as they come up. With most of the instructions, especially those including data transfer, the instruction is first, followed by at least 1 space, after that the destination followed through a comma, and then the source. The destination is where the result of the instruction shall end up and the source is where the data is coming from.

Next we shall read a switch, and light an LED if the switch is pressed. This happens quite frequently in your lab experiments. Bit 0 of Port 0 shall be the switch. While the switch is closed or pressed, bit 0 will be a 1, and if the switch is open or not pressed, bit 0 will be a 0. Bit 0 of Port l is the LED. If bit 0 is a 0 the LED is off and if bit 0 is a 1, the LED shall be on. All the other bits of reg. A shall be ignored and assumed to be all 0's, for the sake of discussion

Start

IN         0          ; read Port 0 into reg. A

CMP    1          ;compare reg. A with the value 1

JNZ      start     ; jump to start if the comparison does not yield 0

OUT     1          ; send a 1 to Port 1, turning the LED on

JMP     start

 

The first line has something new. It's called as a label. In this case it is start:. A label is a manner of telling the assembler that this line has a name that may be referred to later to get back to it. All of the labels are followed by the symbol:, that tells the assembler that it is a label. In the first line we also read the switch by reading Port and putting it into the accumulator. Register. A is the only register that may read in/send out data using ports or perform compares. Therefore, we need not write 'A' in the command it's implied.


Related Discussions:- Assembly language

input and output, Description: LC3 allows input from keyboard and out...

Description: LC3 allows input from keyboard and output to display on the screen. This lab will exercise the input/output capability using LC-3 Assembly language. Procedure

AAD, AAD stand for what??

AAD stand for what??

Instruction set of 8086-microprocessor, Instruction set of 8086 : The 8...

Instruction set of 8086 : The 8086/8088 instructions are categorized into the following major types. This section describes the function of each of the instructions with approp

8088 associated with 8259 a-microprocessor, For an 8088 the 2 addresses lin...

For an 8088 the 2 addresses linked with an 8259A are normally consecutive, and the AO line is associated to the AO pin, but because there are just 8 data pins on the 8259A and the

Solotuon, using 8086 assembly language that interchange upper four bits to ...

using 8086 assembly language that interchange upper four bits to lower four bits. assume that data store in byte memory and it written back to same location. and assume the data as

The pentium-micro processor, The Pentium   The next member of the Intel ...

The Pentium   The next member of the Intel family of microprocessors was the Pentium, introduced in the year 1993. With the Pentium, Intel broke its custom of numeric model name

8086 assembly language, write and run a programme using 8086 assembly langu...

write and run a programme using 8086 assembly language that interchange the lower four bits of AL registered with upper four bits.

Program to perform a conversion on characters in a text file, Write an asse...

Write an assembly language program to perform a rot13 1 conversion on characters in a text file.  The program should read charatcers from the input file, perform the rot13 convers

Program to find the largest number in an array, Write a MC68H12 assembly la...

Write a MC68H12 assembly language program to find the largest number in an array of ten 8-bit numbers. The array is stored in memory locations starting at address $1100. Use branch

Bitwise logical and shift operations, Part A: Bitwise Logical and Shift Op...

Part A: Bitwise Logical and Shift Operations Create a SPARC assembly language program that extracts a bit-field from the contents of register %l0. The position of the rightmos

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