Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Implement a function in ARM assembler (factorial.s) to calculate the factorial of any number up to 100. Provide a main function driver written in C

Implement a function in ARM assembler (factorial.s) to calculate the factorial of any number up to 100. Provide a main function driver written in C to call your assembler function.

Example function call:

printf("The factorial = ", factorial(100));

Since the factorial of a number larger than 15 is too large to be stored as an int in C, you will need to implement a linked list in assembler. Use the example C code we wrote in class on Monday to calculate a large factorial as a guide if you need to.

Here is the C code as well.

#include <stdio.h>

#include <stdlib.h>

struct Node* factorial(int n);

struct Node

{

int data;

struct Node *next;

};

int main(int argc, char const *argv[])

{

struct Node product;

product = factorial(30);

printf("factorial is: %d",product->data);

free();

return 0;

}

struct Node* factorial(int n){

struct Node *lead, *lag, product;

product ->data = n;

lag->data = n;

lead = lag;

while(n != 1){

lead->next = malloc(sizeof(struct Node));

product->data *= lead->data;

lead = lead->next;

lead->data = --n;

}

lead->next = NULL;

return product;

}

Step by Step Solution

3.33 Rating (165 Votes )

There are 3 Steps involved in it

Step: 1

You can use the following code in ARM Assembler and save it as ... blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Introduction To Mathematical Statistics And Its Applications

Authors: Richard J. Larsen, Morris L. Marx

5th Edition

321693949, 978-0321694027, 321694023, 978-0321693945

More Books

Students also viewed these Programming questions

Question

1. Follow directions the first time.

Answered: 1 week ago