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

Macro Libraries, One of the facilities that the use of macros provides is t...

One of the facilities that the use of macros provides is the formation of libraries, which are sets of macros which can be included in a program from a different file. The formatio

Evolution of a computer, EVOLUTION OF A COMPUTER: Although 'computer',...

EVOLUTION OF A COMPUTER: Although 'computer', as we understand it today, is relatively of recent innovation, its development rests on centuries' of research. This section pres

Explain the working of bus connection, Question 1 Explain the working of B...

Question 1 Explain the working of Bus connection Question 2 Write a note on: Robotics and Voice Recognition Question 3 Describe the construction of CD-ROM Question 4

Synchronous and asynchronous transmission, Synchronous and Asynchronous Tra...

Synchronous and Asynchronous Transmission: Another method of setting of terminals denotes synchronous or asynchronous transmission. Many terminals can only communicate in one

Amendments in erp, What is new? ERP, on the other hand begins with a fr...

What is new? ERP, on the other hand begins with a fresh relook at the existing business. In fact it is the result of a happy marriage between Business Process Reengineering (BP

Telephobn directory, #que1) Create telephone directory. • The heading shoul...

#que1) Create telephone directory. • The heading should be 16-point Arial font in bold • The rest of the document should use 10-point font size • Other headings should use 10-point

Data autonomous transmission, DATA AUTONOMOUS TRANSMISSION: This could ...

DATA AUTONOMOUS TRANSMISSION: This could be the possible replacement for the ARINC 429 standard and will be annotated the standard - ARINC 629. In the DATAC system, the contro

E-mail, E-MAIL: Internet has changed the art of writing letters to ema...

E-MAIL: Internet has changed the art of writing letters to email.  Email is one of the ways on Internet to send messages to another person across the network. E-mail and posta

Explain different categories of electronic payment system, Problem 1 Ex...

Problem 1 Explain the different categories of electronic payment system in detail Listing the types and sub types Explanation Problem 2 We know that there a

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