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 ?

10, constant key use for in calculator

constant key use for in calculator

C programming program, I wrote a program that adds up 5x5 matrices by colum...

I wrote a program that adds up 5x5 matrices by column and row. Now i have to use pointers to rewrite the same code how would do that

Software basics, SOFTWARE BASICS: Software is a generic term covering ...

SOFTWARE BASICS: Software is a generic term covering the concepts, procedures and instructions which cause the computer systems to accomplish the required job, Generally, soft

CAI, What is CAI? Explain its pitfalls

What is CAI? Explain its pitfalls

Statistics, Scores from a statistics exam are reported as deviation scores....

Scores from a statistics exam are reported as deviation scores. Which of the following deviation scores indicates a higher position in the class distribution?

Operation system, how to create 1000 random processes with time scales betw...

how to create 1000 random processes with time scales between 10 to 400 milliseconds

SOFTWARE, main task of sofware developper

main task of sofware developper

Project, My son has a project assignment he has problem with. The only thin...

My son has a project assignment he has problem with. The only thing is, it is due in 20 mins. can someone be able to help him? if so, how much is the fee?

What is a Process and process mangemen in operating system? , A process is ...

A process is a chronological program in execution. The constituents of a process are the following: • The object program to be executed ( described the program text in UNIX) • Th

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