learn,how to mix C and Assembly Language ?, Basic Computer Science

Assignment Help:
The technique to mix C and assembly language is to apply the "asm" directive. To access C-language variables from assembly language, you just use the C identifier that name is a memory operand. These variables cannot be local to a procedure, and also cannot be static within a procedure. They have to be global (but can be static global). The newline characters are essential.
unsigned long a1, r;
void junk( void )
{
asm(
"pushl %eax \n"
"pushl %ebx \n"
"movl $100,%eax \n"
"movl a1,%ebx \n"
"int $59 \n"
"movl %eax,r \n"
"popl %ebx \n"
"popl %eax \n"
);
}

This instance does the following:
1. Pushes the value stored in %eax and %ebx onto the stack.
2. Puts a value of 100 into %eax.
3. Copies the value in global variable a1 into %ebx.
4. Executes a software interrupt number 59.
5. Copies the value in %eax into the global variable r.
6. Restores (pops) the contents of the temporary registers %eax and %ebx.

Related Discussions:- learn,how to mix C and Assembly Language ?

What is evaluating information system investments, 1. What is Evaluating In...

1. What is Evaluating Information System Investments? 2. Is IS evaluation different to evaluation of other investments? 3. What approaches are used to evaluate IS investments

Probability, Mike sells on the average 15 newspapers per week (Monday – Fri...

Mike sells on the average 15 newspapers per week (Monday – Friday). Find the probability that 2.1 In a given week he will sell all the newspapers [7] 2.2 In a given day he will sel

Q: HOW DO YOU CODE -- WITHOUT USING ARRAYS OR SPLIT FUNCTION, Q: HOW DO YOU...

Q: HOW DO YOU CODE -- WITHOUT USING ARRAYS OR SPLIT FUNCTIONS -- TO SEPARATE COMMA SEPARATE NUMBER VALUES AND THEN SUM TO TOTAL? I.E., USING SUBSTRING AND INDEXOF. I''ve been try

Display the item in red colour on a web page, QUESTION (a) Give the app...

QUESTION (a) Give the appropriate syntax to implement a Client-Side Image Map, specifying all possible attributes where required (b) List the benefits of using Cascading Sty

Backup storage, Backup Storage: Back up (backing) storage, also termed...

Backup Storage: Back up (backing) storage, also termed external storage, is used to hold programs and data which are read into internal storage when required. The most common

How is python Using Blank Lines and Waiting for the User, A line holds onl...

A line holds only whitespace, probably with a comment, is identified as a blank line, and Python completely avoids it. In an interrelated interpreter session, you need to enter an

Perform a mail merge to send invitation, Question Elaborate the various...

Question Elaborate the various steps in performing a Mail Merge. Perform one mail merge operation for sending invitation for a conference which is being conducted in your organ

DR Racket program, Hi, I''m looking for someone to help me with Computer Sc...

Hi, I''m looking for someone to help me with Computer Science ASAP. How soon are you available? Thanks! Specifically using the Racket program dealing with creating a list that will

Ipx for lan, explain ipx for lan and spx

explain ipx for lan and spx

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