Question: Write a program in LEGv8 assembly language to convert an ASCII string containing positive or negative integer decimal string to an integer. Your program should

Write a program in LEGv8 assembly language to convert an ASCII string containing positive or negative integer decimal string to an integer. Your program should expect register X0 to hold the address of a null-terminated string containing an optional '+' or '' followed by some combination of the digits 0 through 9. Your program should compute the integer value equivalent to this string of digits, then place the number in register X0. If a non-digit character appears anywhere in the string, your program should stop with the value 1 in register X0. For example, if register X0 points to a sequence of three bytes 50ten, 52ten, 0ten (the null-terminated string "24"), then when the program stops, register X0 should contain the value 24ten. (Hint: The ARMv8 MUL instruction takes two registers as input. There is no "MULI" instruction. Thus, just store the constant 10 in a register.)

T

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!