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

Flowchart, i need help with flowcharting a procedure

i need help with flowcharting a procedure

What are the commonly used input/output functions in c, Problem 1 What ...

Problem 1 What is the significance of the keyword 'extern' in a function declaration? Explanation of significance of Keyword 'extern' in function declaration Probl

Explain briefly about gnome desktop, Question 1 Brief about the shells of ...

Question 1 Brief about the shells of Linux operating system Question 2 Explain briefly about GNOME desktop Question 3 Write note on the following Encryption Sig

Write a long note letters to the editor, Question 1 What is meant by typog...

Question 1 What is meant by typography? Describe the process in which one can choose and use type Question 2 What is investigative reporting? Write a long note Question 3

Describe the protocol used by the mmu, Question 1: a) A distinction is...

Question 1: a) A distinction is often made between computer architecture and computer organisation. Describe, using examples, the meaning of computer architecture. b) Name

Time sharing system , Time Sharing System: With the use multiprogrammi...

Time Sharing System: With the use multiprogramming, the batch processing can be quite  efficient. However, for many jobs, it is desirable to provide a mode in which the user i

DBMS, define transaction with its properties? And also explain the transiti...

define transaction with its properties? And also explain the transitive dependencies with form

Explain the concept of knowledge discovery in database, Question 1 Explain...

Question 1 Explain the concept of knowledge discovery in database Question 2 Discuss the following types of Multidimensional Data Models                    Stars, Snowflakes and

Introduction Assembly Language, This web page looks at assembly languages i...

This web page looks at assembly languages in a common method. Specific illustrations of addressing modes and instructions from a variety of processors are used to demonstrate the g

Assignment, Hi I have an assignment can you help me ?

Hi I have an assignment can you help me ?

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