Computes the integral square root - assembly program, Assembly Language

Assignment Help:

Computes the integral square root:

Problem: Square Root:
 
For this problem you will write a short assembly program that computes the integral square root of an input number, A, which is initially stored in R0.  When the program has terminated the square root should be stored in R1, if the input number is negative the output should be -1.  A pseudo-code version of the required algorithm is shown below:
 
Input A: The number whose square root is to be computed

Output B: The approximate square root  - the largest integer such that B*B <= A
 
B=0
If (A >= 0) {
While (B*B <= A) {
    B = B+1
}
}

B = B-1
 
As part of your script function you should set R0 to the input number A. That way you can rerun your program on different inputs by just editing the script file and rerunning.
 
While this algorithm is quite simple, you must comment your assembly code.  If you do not provide some minor comments, points will be taken off your work.  It is best to learn to being using comment appropriately now when it is simple, before it gets complex.  This is going to be true for all programs you author in this class.
 
For this part you should turn in two files: sqrt.asm and sqrt_script.txt


Related Discussions:- Computes the integral square root - assembly program

Interrupt table-how interrupt table processed-microprocessor, Interrupt Tab...

Interrupt Table Each interrupt level has a booked memory location, called an interrupt vector.  All these vectors (or pointers) are stored in the interrupt table. Table lies at

StrNCpyAsm, ;StrNCpyAsm - copy zero terminated string2 to zero terminated s...

;StrNCpyAsm - copy zero terminated string2 to zero terminated string1, ; but copy no more than count (parameter) characters ; or the length of string2, whi

Assignment, 1. Write an assembly program that adds the elements in the odd ...

1. Write an assembly program that adds the elements in the odd indices of the following array. Use LOOP. What is the final value in the register? array1 DWORD 10, 20, 30, 40, 50, 6

Segment registers-microprocessor, Segment Registers The 8086 addresses ...

Segment Registers The 8086 addresses a segmented memory unlike 8085. The complete 1 megabyte memory, which 8086 is capable to address is divided into 16 logical segments.Thusea

Name-offset-assemblers directive-microprocessor, NAME : Logical Name of...

NAME : Logical Name of a Module: The NAME directive which is used to assign a name to an assembly language program module. The modulecan now be mention to by its declared name.

Program to find out positive and negative numbers-assembly, Program : W...

Program : Write an assembly program to find out the number of positive numbers and negative numbers from a given series of signed numbers. Solution : Take the i th num

The 486, The 486 Introduced in the year 1989 the 80486 did not feature ...

The 486 Introduced in the year 1989 the 80486 did not feature any radically new processor technology. Instead, it joints a 386 processor, a cache memory controller and a math c

Programming with an assembler-microprocessor, Programming with an assembler...

Programming with an assembler The procedure of hand-coding 8086 programs is somewhat tiresome; hence generally a programmer may find it hard to get a correct listing of the mac

Instructions, Difference between div and idiv

Difference between div and idiv

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