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

Graph to display the variable, We will be using data from the 2008 Canadian...

We will be using data from the 2008 Canadian General Election Study.1 The data can be found on the course page. As well, there are three other documents (loosely called "codebooks"

Describe about immediate addressing mode, Q. Describe about Immediate Addre...

Q. Describe about Immediate Addressing mode? When an operand is interpreted as an immediate value for example LOAD IMMEDIATE 7 it is actual value 7 which is put in CPU register

How is an instruction represented, Q. How is an instruction represented? ...

Q. How is an instruction represented? Instruction is signified as a sequence of bits. A layout of an instruction is called as instruction format. Instruction formats are princi

What is the best way offload responsibility, What is the best way offload r...

What is the best way offload responsibility? The best way to offload responsibilities is to purchase services through a Service Provider. ISPs, customers and Service Provide

Define wide area network, Q. Define Wide Area Network? Wide Area Networ...

Q. Define Wide Area Network? Wide Area Network (WAN): It takes a large geographical area and frequently owned by a state. Data transfer rate is low (few KBPS to 10 MBPS) and er

What is asp.net authentication providers and iis security, What is ASP.NET ...

What is ASP.NET Authentication Providers and IIS Security? ASP.NET implements authentication using authentication providers, which are code modules that verify credentials and

Multi-threaded concurrency programming with threads, Your task is to implem...

Your task is to implement a memory manager that manages page reads and writes from multiple client threads. In the first programming task the memory manager keeps all the pages in

Boolean expression derived from this k-map, Let us see the pairs that can b...

Let us see the pairs that can be considered as adjacent in Karnaugh's here. The pairs are:  1)  The four corners  2)  The four 1's as in top and bottom in column 00 & 01

What are the types of pipeline hazards, What are the types of pipeline haza...

What are the types of pipeline hazards? The various pipeline hazards are:  1. Data hazard  2. Structural Hazard  3. Control Hazard.

One can use the event get in a report without ldb attribute, One can use th...

One can use the event GET in a report without LDB attribute. False. no one can use the event GET in a report without attribute.

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