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

Write a note on file permissions on linux, Question 1 Write a note on a...

Question 1 Write a note on advantages and disadvantages of Linux 2 Write a note on "File Permissions" on linux 3 Explain the usage of following Linux commands Cd kill

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

Data communications, Data communication as a need developed in the 1960s wi...

Data communication as a need developed in the 1960s with the interconnection of peripheral devices to mainframe computers. Within the immediate vicinity of the mainframe computer t

What is Kernel-Level Thread in operating system?, In this technique, the ...

In this technique, the kernel knows about and handles the threads. No runtime system is required in this case. In place of thread table in each process, the kernel has a thread tab

Mr, Please what is the different between computer science and information t...

Please what is the different between computer science and information technology? Which of this require too much reading? Thanks

Memory unit of computer, Memory unit of computer: The Memory  unit is ...

Memory unit of computer: The Memory  unit is an important component of a computer where all the data and information are stored in the form  of binary digits (combination of 0

Purchasing a database program, When purchasing a database program, you must...

When purchasing a database program, you must have a clear idea of what you need it for. Ask yourself the following questions. (1) Will it perform all (he operations necessary f

Device drivers, Device Drivers:   Device drivers are shared computer p...

Device Drivers:   Device drivers are shared computer programs that provide an interface between the hardware devices and operating system or other higher level programs.

Applications software, Applications Software: General aspects on appli...

Applications Software: General aspects on applications software. Applications software is the program that allow the user to get the required work done. In other words, applic

Examples of online databases, Examples of Online Databases: The adopti...

Examples of Online Databases: The adoption of modern technology has resulted in the proliferation of machine readable databases. The National Library of Medicine (USA) designe

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