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

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.

Open systems interconnection, Open Systems Interconnection (OS1): As t...

Open Systems Interconnection (OS1): As there are many different protocols for LANs and WANs, communication between two different systems can be difficult. The International St

Compiler, Compiler A compiler is a special program which transla...

Compiler A compiler is a special program which translates programs written in high level language into machine language. The original program is called the source progra

Historical background of computers, Historical Background The br...

Historical Background The brief history of the growth of computers is given below: Abacus:   It was the first mechanical device developed approximately 3,000 year

Differentiate Preemptive and Nonpreemptive Scheduling?, The Scheduling algo...

The Scheduling algorithms can be divided into two parts with respect to how they deal with clock interrupts. 1) Nonpreemptive Scheduling: A scheduling

Encoder, What is an encoder? Draw the logic circuit of Decimal to BCD encod...

What is an encoder? Draw the logic circuit of Decimal to BCD encoder and explain its working.?

Immediate addressing, These addressing modes are: With immediate addressing...

These addressing modes are: With immediate addressing, no lookup of data is essentially required. The data is located in the operands of the instruction itself, not in a different

Satellite transmission, Satellite Transmission: Satellites use microwa...

Satellite Transmission: Satellites use microwave frequencies and techniques. Satellites used for message transmission (as opposed to those, which travel around the earth on st

Output devices, Output devices: One of the most important output devic...

Output devices: One of the most important output devices in computer system is its screen commonly called monitor. It is an output device and displays all the programs and app

Transmission control protocol, The TCP/IP networking protocol suite is so b...

The TCP/IP networking protocol suite is so basically named for two of its very most and important protocols: Transmission Control Protocol online tutoring Indication Manage

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