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

Explanation pre increment with example, Problem 1 What is precedence of...

Problem 1 What is precedence of operators? How are expressions evaluated using precedences? Defining precedence of operators Explanation of how expressions are evaluat

Calculate simple interest -algorithm, Algorithm : 1. Read the values of pri...

Algorithm : 1. Read the values of principal amount, time and rate of simple interest into the locations labelled as P, T, R. 2. Set the count T to 1 implying the end of a year. 3.

Simple batch systems, Simple Batch Systems: Early machines were very...

Simple Batch Systems: Early machines were very expensive, and therefore it was important to maximize machine utilization. To improve utilization, the concept of batch operat

Define internet and explain its working, Question 1 Define Internet and ex...

Question 1 Define Internet and explain its working Question 2 Explain page format specifiers and page content specifiers of XSL-FO Question 3 Write a note on HTML

Computer architecture, Write control sequence for adding the content of the...

Write control sequence for adding the content of the memory location whose address is at memory location pointed by immediate number NUM to register R1. Assume the number NUM is pr

Computer orgnaization, draw a block diagram to show organization of a compu...

draw a block diagram to show organization of a computer system .explain or a units of computer system

Operating system, advantage and disadvantage of operating system

advantage and disadvantage of operating system

Cprgm, A palindrome is a string that reads the same from both the ends. Giv...

A palindrome is a string that reads the same from both the ends. Given a string S convert it to a palindrome by doing character replacement. Your task is to convert S to palindrome

Online searching, Online Searching: The real difference between manual...

Online Searching: The real difference between manual searching and online searching lies, according to William A. Katz, in the mechanics and the jargon of the latter. However,

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