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 ?

Programming, create a simple Visual Basic project

create a simple Visual Basic project

The terms ''row-major order'' and ''column-major order", What is meant by t...

What is meant by the terms 'row-major order' and 'column-major order'? Ans: (i) Storing the array column by column is called as column-major order and storing the array row by

Networking and telecommunications, NETWORKING AND TELECOMMUNICATIONS: ...

NETWORKING AND TELECOMMUNICATIONS: Computers can now communicate with each other and with a range of peripheral devices, over distances with increasing speed and reliability.

Define the elements of contlor unit , The three main elements of the con...

The three main elements of the control unit are: 1. Decoder this is used to decode the instructions that create a program when they are being processed, and to establish in what ac

Arinc 429 data bus specifications, ARINC 429 DATA Bus SPECIFICATIONS: A...

ARINC 429 DATA Bus SPECIFICATIONS: ARINC 429 sets specifications for the transfer of digital data between aircraft electronic system components and is a "One-way" communication

Two degree of freedom system with matlab program, solution of two degree of...

solution of two degree of freedom system with matlab program???

Instruction pipeline, How branching takes place in Instruction pipeline. Ex...

How branching takes place in Instruction pipeline. Explain with suitable examples.

Scheme, There is a path between two vertices if there is a series of edges ...

There is a path between two vertices if there is a series of edges that you can use to travel between them. For example, between vertices 1 and 3 above, there is a path made up of

Discuss the advantages and disadvantages of printed indexes, QUESTION 1 ...

QUESTION 1 Discuss the advantages and disadvantages of printed indexes. QUESTION 2 (i) The Library of Congress Subject Headings List and the Sears Subject Headings List

Computer science, Explain Canonical cover and Extraneous Attributes with ex...

Explain Canonical cover and Extraneous Attributes with examples.

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