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 ?

Database management, Suppose you are designing a database for an art museum...

Suppose you are designing a database for an art museum that owns a large volume of works of art. Each work of art is described by a unique item code, a title, a type, and a size. T

Features of python, • Easy-to-learn: Python has comparatively few keywords,...

• Easy-to-learn: Python has comparatively few keywords, easy structure, and a clearly distinct syntax. This permits the student to pick up the language in a comparatively short per

System software, System software: System software helps run the  compu...

System software: System software helps run the  computer hardware and system. It is designed to control the operations of a computer and coordinate all external devices like c

Introduction to FCB , There are two kinds of FCB, the normal, whose length...

There are two kinds of FCB, the normal, whose length is 37 bytes and the expanded one of 44 bytes. The FCB is created of data given by the programmer and by data which it takes dir

Flowchart, Fahrenheit to celsius convertion

Fahrenheit to celsius convertion

Comments in Python, A hash sign (#) that is not within a string literal beg...

A hash sign (#) that is not within a string literal begins a comment. All characters later than the # and up to the physical line end are division of the comment, and the Python in

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