Find the average of two values, Computer Engineering

Assignment Help:

Q. Find the average of two values?

Find the average of two values which are stored in 

; Memory locations named FIRST and SECOND 

; And puts result in memory location AVGE.

; Input:  Two memory variables stored in memory locations FIRST and SECOND

; REGISTERS            ; Uses DS, CS, AX, BL

; PORTS                      ; None used

DATA             SEGMENT

FIRST             DB   90h         ; FIRST number,                      90h is a sample value

SECOND        DB   78h         ; SECOND number,                 78h is a sample value

AVGE             DB   ?              ; Store average here

DATA ENDS

CODE   SEGMENT

                        ASSUME CS:CODE, DS: DATA

START:           MOV    AX, DATA               ; Initialise data segment, i.e. set

                        MOV    DS, AX                     ; Register DS to point to Data Segment

                        MOV    AL, FIRST                            ; Get first number

                        ADD    AL, SECOND           ; add second to it 

                        MOV    AH, 00h                     ; Clear all of AH register

                        ADC    AH, 00h                     ; Put carry in LSB of AH

                        MOV    BL, 02h                     ; Load divisor in BL register

                        DIV      BL                             ; Divide AX by BL. Quotient in AL,

                                                                        ; And remainder in AH

                        MOV    AVGE, AL                ; Copy result to memory

CODE ENDS

END START

Discussion: 

An add instruction can't add two memory locations directly so we moved a single value in AL first and added the second value to it.

Please consider on adding the two values there is a possibility of carry bit. (The values here are being considered as unsigned binary numbers). Now problem is how to putcarry bit in the AH register in such a way that AX(AH:AL) reflects added value. This is done employing ADC instruction.

ADC AH,00h instruction would add immediate number 00h to contents of carry flag and contents of AH register. The result will be left in AH register. As we had cleared AH to all zeros before the add we actually are adding 00h + 00h + CF. Result of all this is the carry flag bit is put in AH register that was anticipated by us.

Lastly to get the average we divide the sum given in AX by 2. A more universal program would need negative and positive numbers. After division 8-bit quotient would be left in AL register that can then be copied in the memory location called as AVGE.


Related Discussions:- Find the average of two values

Explain about aggregations, OLAP can process difficult queries and give the...

OLAP can process difficult queries and give the output in less than 0.1 seconds, for it to achieve like performance OLAP uses aggregations. Aggregations are built by aggregating an

What are the primary models of supply chain management, What are the primar...

What are the primary models of Supply Chain Management? Two Primary models of Supply Chain Management are illustrated below: a. Porter’s Value Chain Model and b. Supply

Priority interrupt and synchronous bus, What is a Priority Interrupt? A...

What is a Priority Interrupt? Ans: A priority interrupt is a type of interrupt that establishes a priority over the many sources to determine which condition is to be serviced

Explain clone process, Explain Clone process. A clone process is genera...

Explain Clone process. A clone process is generated using primitive type clone by duplicating its parent process. However unlike traditional processes it might be share its con

Logical functions, Logical functions   We have discussed the If, 'While...

Logical functions   We have discussed the If, 'While and For' Statements, and have used expressions within our syntax i.e.           If ( expression)           Statement 1;

What do you mean by artificial intelligence, Q. What do you mean by artific...

Q. What do you mean by artificial intelligence? Show the artificial intelligence systems used widely in business. ANSWER: Artificial intelligence (AI) is the science of making

Implement or, Q. Write a program to implement OR, NOR, AND and NAND gates ...

Q. Write a program to implement OR, NOR, AND and NAND gates using and without using Bit wise operator. The menu should be as follows: I. Using Bit Wise operator II. Withou

What can be middle wares role within e-commerce, What can be middle wares r...

What can be middle wares role within e-commerce? By the utilize info Platform Commerce Server a shopping service can take benefit of reaching the end user onto Open TV, SMS, WA

Creating a new directory in dos, Q. Creating a New Directory in DOS? Yo...

Q. Creating a New Directory in DOS? You can create any directory under any directory in the hard disk or floppy disk. The command to create a new directory is MKDIR or MD. To c

Example on distribution of data, Q. Example on Distribution of Data? !H...

Q. Example on Distribution of Data? !HPF$ PROCESSORS P1(4) !HPF$ TEMPLATE T1(18) !HPF$ DISTRIBUTE T1(BLOCK) ONTO P1  Consequently of these instructions distribution of

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