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 ?

Find job, I want assignment writingjob

I want assignment writingjob

Function, Function: The purpose of a function is to take in a number of v...

Function: The purpose of a function is to take in a number of values or arguments, do some calculations with those arguments and then return a single result.  Each language has d

E- learning processes, E- Learning Processes: Since, any e-learning pr...

E- Learning Processes: Since, any e-learning project checks your achievements against a learning outcome, therefore, it starts with identification and verification process. Th

Create email account, Create Email Account: For sending or receiving e...

Create Email Account: For sending or receiving email, you need to have to an email account. The email account may be provided by the organization for which you are working or

Indexing and abstracting databases, Indexing and Abstracting Databases: ...

Indexing and Abstracting Databases: A study of growth of indexing and abstracting services over the years would show that during the past two centuries, these services have be

State the importance of visual storytelling, Question 1 What are the vario...

Question 1 What are the various steps involved in pre-production design? Question 2 What are the different kinds of perspectives used in a layout? Question 3 Descr

Multiple allocations, You can also allocate a single value to several varia...

You can also allocate a single value to several variables at the same time. For instance: X=y=z =1 Now, an integer object is generated with the value 1, and all three variables are

Explain the important concepts of modern cpu, Question 1 Explain the impor...

Question 1 Explain the important concepts of modern CPU CISC vs. RISC CPUs Circuit Size and Die Size Processor Speed Processor Cooling System Clocks Architect

Computer architecture, Write control sequence for adding the content of the...

Write control sequence for adding the content of the memory location whose address is at memory location pointed by immediate number NUM to register R1. Assume the number NUM is pr

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