Add a byte number from one memory location, Computer Engineering

Assignment Help:

Add a byte number from one memory location to a byte from subsequent memory location and put sum in the third memory location. Also save carry flag in the least significant bit of fourth memory location. 

; ABSTRACT                         : This program adds 2-8-bit words in the memory locations

;                                               : NUM1 and NUM2. The result is stored in the memory 

;                                               : location RESULT. The carry bit, if any will be stored as 

;                                               : 0000 0001 in the location CARRY

 

; ALGORITHM:

;                       get NUM1

;                       add NUM2 in it

;                       put sum into memory location RESULT

;                       rotate carry in LSB of byte

;                       Mask off upper seven bits of byte

;                       store the result in the CARRY location.

;

; PORTS:                     None used

; PROCEDURES:      None used

; REGISTERS:           Uses CS, DS, AX

;

DATA   SEGMENT

NUM1                         DB                  25h                  ; First number

 NUM2                        DB                  80h                  ; Second number

 RESULT                    DB                  ? ; Put sum here

 CARRY                     DB

DATA   ENDS

CODE   SEGMENT

                        ASSUME CS: CODE, DS: DATA

START: MOV AX, DATA                ; Initialise data segment

MOV DS, AX                        ; register using AX

            MOV AL, NUM1                   ; Load the first number in AL

            ADD AL, NUM2                   ; Add 2ndnumber in AL

MOV RESULT, AL  ; Store the result

               RCL AL, 01                         ; rotate carry into LSB

               AND AL, 00000001B         ; Mask out all but LSB

               MOV CARRY, AL             ; Store the carry result

            MOV AH, 4CH

               INT 21H

CODE ENDS

END START

Discussion:

RCL instruction brings carry in the least significant bit position of AL register. AND instruction is employed for masking higher order bits of the carry now in AL.

In the same way we can also write applications employing other shift instructions.


Related Discussions:- Add a byte number from one memory location

Explain readers-writers problem, Explain Readers-writers problem. Read...

Explain Readers-writers problem. Readers-writers problem: Assume that a data object (as a file or record) is to be shared between several concurrent processes. The readers ar

Inherent addressing, Inherent addressing   Here the address is already b...

Inherent addressing   Here the address is already built in to the instruction i.e. inherent to the code     ABA  ; Add A to B and store the answer in A  Simple programs using

Data mining, what is data mining and what is its uses in a industry?

what is data mining and what is its uses in a industry?

Illustrate left shift register with parallel load, Q. Illustrate Left shift...

Q. Illustrate Left shift register with parallel load? A register that shifts data in one direction only is known as Uni-directional shift register and a register that can shift

Recent parallel programming models, A model for parallel programming is an ...

A model for parallel programming is an abstraction and is machine architecture independent. A model can be executed on several hardware and memory architectures. There are various

Translate the sentences into predicate calculus, Translate each of the foll...

Translate each of the following sentences into predicate calculus, conceptual dependencies, and conceptual graphs: 1. Bill sold the book to the book store." 2. "John borrowed

How online databases work, How Online Databases Work? An online or web-...

How Online Databases Work? An online or web-based database keeps data on a cloud of servers somewhere on the Internet, which is accessible by any authorized user with an Intern

Data can be moved using a ''write:'' statement, Data can be moved from one ...

Data can be moved from one field to another using a 'Write:' Statement and stored in the desired format.  Write: Date_1 to Date_2 format DD/MM/YY.

What is the standard template library (stl), A library of container templat...

A library of container templates approved by the ANSI committee for inclusion in the standard C++ specification. A programmer who then launches into a discussion of the generic

Illustrate diffrent types of modems, Q. Illustrate Diffrent types of modems...

Q. Illustrate Diffrent types of modems? There are four different types of modems: half-duplex, full-duplex, synchronous, and asynchronous.With half-duplex modems data can be tr

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