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

#title, what is HMtl stands for, meaning and purpose

what is HMtl stands for, meaning and purpose

Random reading and writing and Closing a fcb file, The 21H function and the...

The 21H function and the 22H function of the 21H interruption are the ones in charge of realizing the random readings and writings in that order. The random register number and the

We will compare the performance of a vector processor, In this problem we w...

In this problem we will compare the performance of a vector processor with a system that contains a scalar processor and a GPU-based coprocessor. In the hybrid system, the host pr

Graphical bulleted slides, Here are the more specific requirements and the ...

Here are the more specific requirements and the related points - use the below as a check-off list when you make your presentation.  Please note . . . many of the requirements are

Explain the raster scan display system, Question 1 Explain boundary fill a...

Question 1 Explain boundary fill and flood fill polygon filling algorithm Question 2 Draw and explain the block diagram of typical workstation Question 3 Explain the ras

What is a search engine? explain its various parts, Question 1 What are th...

Question 1 What are the dos and don'ts of Internet Reporting? Question 2 Write a long note on the later years of journalism in USA Question 3 What is a search engi

C programming, input is n positive numbers and reverse it, out put gv the a...

input is n positive numbers and reverse it, out put gv the absolute difference and give the reverse(magic number),using function reverseinteger, and function generate magicnumber

As, access,excel and ms word/

access,excel and ms word/

Types of software interface, different types of software interfaces which f...

different types of software interfaces which falls in different categories

Rooted tree, Ask qu The figure below shows a rooted tree, 756_Find the hei...

Ask qu The figure below shows a rooted tree, 756_Find the height.png 1.1. Find the height/level of the tree as shown above?estion #Minimum 100 words accepted#

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