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 ?

Digital logic design, Find the complement of the following decimal 7

Find the complement of the following decimal 7

Classify computer system according to capacity, classify computer system ac...

classify computer system according to capacity. how they are different from computer according to the classification of technology.provide the comparative study also.

Outline the five main steps in the web design process, QUESTION (a) Out...

QUESTION (a) Outline the five main steps in the Web Design Process (b) Draw an annotated diagram explaining how data is transmitted to web servers during a standard form sub

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

Microprocessor, what is computer? explaine the block diagram of a general p...

what is computer? explaine the block diagram of a general purpose digital computer.

Creating Navigational Buttons in Oracle, Need some help in creating custom ...

Need some help in creating custom forms navigational buttons in oracle 10g

Management information systems, how to introduce information system an in o...

how to introduce information system an in organization

Define z-transform of sequence x[n], QUESTION (a) Define z-transform o...

QUESTION (a) Define z-transform of sequence x[n]. (b) A causal LTI system has impulse response h[n], for which the z-transform is                     H(z) = (1+z -1

C++, how to use expressions in c++ program with examble

how to use expressions in c++ program with examble

Hacking, how can i hack a server

how can i hack a server

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