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 ?

Description of external hardware interruptions, External interruptions are...

External interruptions are produced by peripheral devices, for example keyboards, printers, communication cards, etc. They are also produced by coprocessors. It is not achievable t

What is the benefit of Threads?, Following are some causes why we use threa...

Following are some causes why we use threads in designing operating systems. A process with several threads makes a great server for instance printer server. For the reason that t

Input and output device, Input and Output device: After having underst...

Input and Output device: After having understood the characteristics relating to CPU and storage media, let us try to learn about I/O aspects of a computer system. Input /outp

Inside earth, What are two types of evidence geologists use to learn about ...

What are two types of evidence geologists use to learn about Earth''s interior.?

A brief introduction of python, Python is an interpreted, high-level, inter...

Python is an interpreted, high-level, interactive and object oriented-scripting language. Python was designed to be extremely readable which uses English keywords commonly where as

Write a brief note on firewalls, Question 1 Explain the TCP/IP protocol la...

Question 1 Explain the TCP/IP protocol layers Question 2 Write a note Fiber Distributed Data Interface (FDDI) Question 3 Discuss on File Transfer Protocol (FTP)

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