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 ?

Defining conditional operator, Problem 1 What is conditional operator? ...

Problem 1 What is conditional operator? Using conditional operator find a smallest number between two numbers Defining conditional operator Using it to find smallest n

Sequential reading in fcb files, Earlier than anything we must describe the...

Earlier than anything we must describe the file transfer area or DTA. With the intention of sequentially read we use the 14H function of the 21Hinterruption.The register to be read

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)

Alternative approaches for acquiring software, Alternative approaches for a...

Alternative approaches for acquiring software: There are some alternative approaches for acquiring software. They are:  i)  'off the shelf' software package  ii)  'turnk

Explain digital multiplexers, Problem 1 Perform the following conversio...

Problem 1 Perform the following conversion a. (ABE) 16 =() 2 b. (101011) 2 =() 10 2 Explain how full adder adds three bits 3 Explain digital multiplexers

General considerations for search - artificial intelligence, General Consid...

General Considerations for Search If we may specify the starting state, the operators and the goal check for a search problem, then we know from where to start, how to move and

Hardware basics, HARDWARE BASICS In the foregoing section of this Unit...

HARDWARE BASICS In the foregoing section of this Unit, an attempt has been made to explain to you the historic perspective relating to the development of computer from its ear

Network, Give a topology (network diagram) in which there is a link whose f...

Give a topology (network diagram) in which there is a link whose failure will change many routes. Give one in which there is a link whose failure will not change any routes

Classification of database management systems, Question 1: (a) Describ...

Question 1: (a) Describe the three ways of classification of Database management systems (DBMS). (b) Why are System Analysts and Database Administrators needed in compa

Software engineering, assignment 1:architectural design 2: component des...

assignment 1:architectural design 2: component design

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