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 ?

System software, Name and explain the classifications of computers

Name and explain the classifications of computers

Define procedure of Building Assembler programs, In order to be able to mak...

In order to be able to make a program, quite a lot of tools are needed: Earliest an editor is used to create the source program. Next a compiler, which is nothing more than a progr

Why we need data mining? Give an example to illustrate your, Why we need da...

Why we need data mining? Give an example to illustrate your answer.

Explain ring counter with diagrams, Question 1 Convert the following hexad...

Question 1 Convert the following hexadecimal numbers to base 2 (D73)16 (A21)16 Question 2 Convert the following binary numbers to base 16 (11001011)2 (11

Output, what is output and input

what is output and input

Explain Modern architecture of microprocessor, There are many other techniq...

There are many other techniques in which companies who manufacture microprocessors have attempted to get better the performance of their CPUs. Cache memory this is a small quantit

C in, which one of the following is a valid identifier

which one of the following is a valid identifier

Computational physiology, Estimate the mean deflection of the QRS complex i...

Estimate the mean deflection of the QRS complex in each of the six standard leads (I, II, III, aVR, aVL, aVF) in Figure 1 and then estimate the mean heart vector for the normal hea

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