Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Questions >> Describe how to infer the correct answer. (for example, you need to explain where is variable i stored and how did you infer

Questions >> Describe how to infer the correct answer. (for example, you need to explain where is variable i stored and how did you infer that from the assembly code).

Consider the following assembly representation of a function foo containing a for loop:

foo:

pushl %ebp

movl %esp,%ebp

pushl %ebx

movl 8(%ebp),%ebx

leal 2(%ebx),%edx

xorl %ecx,%ecx

cmpl %ebx,%ecx

jge .L4

.L6:

leal 5(%ecx,%edx),%edx

leal 3(%ecx),%eax

imull %eax,%edx

incl %ecx

cmpl %ebx,%ecx

jl .L6

.L4:

movl %edx,%eax

popl %ebx

movl %ebp,%esp

popl %ebp

ret

Fill in the blanks to provide the functionality of the loop:

int foo(int a)

{

int i;

int result = a+2;

for(i=0; i>a; i++ )

{

result += (i+5);

result *= (i+3);

}

return result;

}

Step by Step Solution

There are 3 Steps involved in it

Step: 1

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

Data Management Databases And Organizations

Authors: Richard T. Watson

3rd Edition

0471418455, 978-0471418450

More Books

Students also viewed these Databases questions

Question

What are the Five Phases of SDLC? Explain each briefly.

Answered: 1 week ago

Question

How can Change Control Procedures manage Project Creep?

Answered: 1 week ago