What help with this Assembly language Subroutine, Basic Computer Science

Assignment Help:
Write an ARM subroutine which will extract a substring from a string. You will need to use the library routine malloc to allocate memory for the new string.

The subroutine signature is:
char * mysubstring( char string[], int start, int end ) ;

where char string[] is the string to extract the substring from; it is passed into the ARM routine as a pointer in a1 to the first element of the character (byte) array,
int start is the first character to extract from the string to the substring; it is passed into the ARM routine as a value in a2,
int end is the last character to extract from the string to the substring; it is passed into the ARM routine as a value in a3.
The return is a pointer to the new string.

#include
#include

extern char * mysubstring( char string[], int start, int end ) ;

int main( int argc, char * argv[] )
{
char tosub[] = "this is the string to substring" ;
char * result ; /* pointer to new string */

result = mysubstring( tosub, 12, 17 ) ;
printf( "String: %s\nSubstring: %s\n", tosub, result ) ;

exit( 0 ) ;

}

To use the library routine malloc you need to calculate the number of bytes of memory you are requesting, put that number in a1 and bl malloc. Upon return from the library routine a1 will have a pointer to the allocated memory.

You may assume that the start and end values are within the string and malloc returns a proper pointer value.

Related Discussions:- What help with this Assembly language Subroutine

Syntax of a Procedure in assembly language, There are two kinds of procedur...

There are two kinds of procedures, the intrasegments, which are found on the similar segment of instructions and the inter-segments which can be stored on dissimilar memory segment

Definition of resource sharing , Resource sharing is a concept which has de...

Resource sharing is a concept which has developed to contain many cooperative activities among libraries and other stakeholders. Interlibrary loan continues to be the basis of reso

Computer generations, Computer Generations: From the early 1940's to t...

Computer Generations: From the early 1940's to the present, computer scientists have been able to identify clear-cut stages in the development of computer technology. With eac

Drawing Karnaugh Maps, Where can I get free software for drawing K maps

Where can I get free software for drawing K maps

Port in a computer, what is the need of a port in a computer?

what is the need of a port in a computer?

Distinguish between the cryptoprovider and the managed class, QUESTION ...

QUESTION (a) Using the Luhn 10 check formula verify whether the following account number is compliant: 49927398716. Show details of your workings (b) Why is it advisable to

Area of curve, Write a program to find the area under the curve y = f(x) be...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

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