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

Java programming, Write a program that lets the user play the game Rock, Pa...

Write a program that lets the user play the game Rock, Paper, Scissors against the computer. The program should work as follows: ? When the program begins, the results of the prev

Access database, 1.Add a Validation Rule for Date of Birth so no one under ...

1.Add a Validation Rule for Date of Birth so no one under the age of 18 can be added to the table. Hint: subtract the DOB from today''s date and divide by 365.25 (watch the parenth

Database management software, Database Management Software: For storage of...

Database Management Software: For storage of large amounts of varied data, and rapid retrieval and interpretations of data, the database is the ideal tool. It is most useful for s

Cai, #whatis cai?and its pit fallsquestion..

#whatis cai?and its pit fallsquestion..

Block matching algorithm, I am using block matching algorithm to get the mo...

I am using block matching algorithm to get the motion vectors, now, how can I get the depth map/depth value from the motion vectors?

Loading instructions, They are particular register instructions. They are u...

They are particular register instructions. They are used to load bytes or sequences of bytes onto a register. LODS (LODSB) (LODSW) LAHF LDS LEA LES LODS (LODSB) (LODSW) INSTRUCTION

N-ary relationships in database design, n-ary relationships in database des...

n-ary relationships in database design Each n-ary where n>2 relationship type is maped into a table name of the relationship works as the name of the table. The primary key of suc

Command Line Arguments, You may have seen, as, that many programs can be ru...

You may have seen, as, that many programs can be run so that they give you with some basic information concerning how they should be run. Python permits you to do this with -h: $ p

#algorithm, #to determine whether given year is leap year or not

#to determine whether given year is leap year or not

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