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 ?

Process control management, Process Control Management:   A  process  ...

Process Control Management:   A  process  is an executing program. It is considered the standard unit of work within a computer system. Every executing program is treated as a

Data processing, Data Processing : Processing data is the most complex fun...

Data Processing : Processing data is the most complex function of a computer system. It is where the computer itself (as opposed to a peripheral, e.g. a visual display unit or a p

Experiment with computer system measurements, In this assignment, you need ...

In this assignment, you need to experiment with computer system measurements. Firstly, pick a platform to study. Any Unix-based system (such as a PC running some version of Linu

ASSIGNMENTS, A STAIRCASE LIGHT IS CONTROLLED BY TWO SWITCHES ONE AT THE TOP...

A STAIRCASE LIGHT IS CONTROLLED BY TWO SWITCHES ONE AT THE TOP OF THE STAIRS AND ANOTHER AT THE BOTTOM OF STAIRS

Write the function pop in c, QUESTION (a) Convert each of the following...

QUESTION (a) Convert each of the following expressions to prefix and postfix. (i) (A+B)*(C+D) (ii) A-B/(C*D^E) (^ denotes exponentiation) (b) The following algorithm c

Data structures, let me know if you can do this assignment and how long it ...

let me know if you can do this assignment and how long it takes

Create a flowchart that displays the student''s avera, Ask questiCreate a f...

Ask questiCreate a flowchart that displays the student''s average score for three quizzes. + Assume that there are 3 sections each having 5 students + The only valid number to be

Write this ARM assemble language program, Programming Assignment CS252 Spri...

Programming Assignment CS252 Spring 2014 Write an ARM assembly language subroutine that performs according to the following specification (Caesar cypher). Given a mixed case al

Number system, convert the following in to binary 108

convert the following in to binary 108

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