1 / 24

Assembler, Compiler, Interpreter

Assembler, Compiler, Interpreter. Skill Area 311 Part D. Prepared by Dhimas Ruswanto , BMm. Lecture Overview. Assembler Compiler Interpreter. assembler. Assembler. To convert the assembly language into machine code.

mferreira
Télécharger la présentation

Assembler, Compiler, Interpreter

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Assembler, Compiler, Interpreter Skill Area 311 Part D Prepared by DhimasRuswanto, BMm

  2. Lecture Overview • Assembler • Compiler • Interpreter

  3. assembler

  4. Assembler • To convert the assembly language into machine code. • Translate mnemonic operation codes to their machine language equivalents. • Assigning machine addresses to symbolic labels.

  5. The assembler can also process assembler directives. • Assembler directives (or pseudo-instructions) provide instructions to the assembler itself. They are not translated into machine instructions • E.g. • START (specify name and starting address for the program). • END (indicate the end of the source program and (optionally) specify the first executable instruction in the program) Assembler Directives

  6. Programmer write a program using a sequence of assemble instructions. • This sequence of assembler instructions, known as the source code/source program, then specified to the assembler program when that program is started. • It translates a source code into machine language. • The output of the assembler program is called the object code or object program. Working of Assembler

  7. We use Flat Assembler (FASM) • Download on: • http://flatassembler.net/ • Download for Windows • The Linker is the program that ties all the loose end together and makes a single program out of the pieces. FASM comes with its own built in linker Example of Assembler

  8. Go to “Start -> Control Panels -> System -> Advanced -> Environment Variables • Make a new system variable, called include, with value C:\(your directory of fasm folder) • Run fasmw.exe • Note: Please refer to the http://www.friedspace.com/assembly/first.php Setting up FASM

  9. Inside FASM, open the EXAMPLES directory, open the directory called HELLO, open the file Hello.asm • Go to Run menu, Compileand Run • The program will assemble and then the pop message box up on the screen Run First Program

  10. Run First Program (cont’d) include 'win32ax.inc' ; you can simply switch between win32ax, win32wx, win64ax and win64wx here .code start: invoke MessageBox,HWND_DESKTOP,"Hi! I'm the example program!",invoke GetCommandLine,MB_OK invoke ExitProcess,0 .end start

  11. First line, win32ax.in is a special macro file. • The next line, .codetells the assembler we are going to include some code now. • The line start: is a label. It gives a name to one of the lines. • The program is ended with the .end directive. The execution of the program will begin at this point • The remaining two line are calls to the Windows API to tell it to display a message box and then quit. Hello World Program

  12. Compiler

  13. A program that changes source code (high-level language) to object code which that can be executed by a machine. • Compiler: • Checks syntax of program • Checks at a time all the program • Primary reason for compiling source code is to create an executable program • Examples of compiler based language: • C, C++, JAVA Compiler

  14. Executables: Files that actually do something by carrying out a set of instructions. • E.g., .exe files in Windows • Once the executable is there, it can be called by the user to process the given inputs to a program and produce the desired outputs. Executables

  15. Some of examples of Compiler: • Microsoft Visual Studio • BlueJ • Quincy 2005 • We use Quincy 2005 (Open Source) • Link: http://www.codecutter.net/tools/quincy/ • We use C++ programming language. Example of Compiler

  16. Open Quincy 2005. • File -> New -> C++ Source File -> OK • File -> Save as.. -> Hello.cpp • Write the following code: • #include <iostream> • using namespace std; • int main() • { • cout << "Hello World!" << endl; • return 0; • } First Program

  17. The first line #include <iostream>,input/output library • The second line using namespace std; , allows us to group a set of global classes, objects and/or functions under a name • int main() { }, the main function of program • cout << "Hello World!" << endl; print the “Hello World!” message to the screen. • return 0;, terminate the main function of program. A return value of 0 means that the program finished correctly First Program (cont’d)

  18. INterpreter

  19. A computer program that executes instructions written in a programming language and do not produces the executable file. • Interpreter: • Checks the keywords of a program • Taking one instruction at a time and convert it into machine language before taking upon the next instruction. • Examples of interpreter based language: • PHP, JavaScript, BASIC Interpreter

  20. Compiler vs. Interpreter

  21. We use JavaScript language. • JavaScript engine is specialized computer software which interprets and executes JavaScript. Mostly used in web browsers. Example of Interpreter

  22. Open Notepad -> Save as.. -> Name the file as hello.html • Write the following code: • <html> • <body> • <script> • name = prompt("Hello World") • </script> • </body> • </html> JavaScript

  23. <html>, open a html page • <body>,put all the website contents inside • <script),open a script function • name = prompt("Hello World"), shows the Hello World! Message • </script>, close the script function • </body>, close the body of a web page • </html>, close a html page JavaScript (cont’d)

  24. Assembler = To convert the assembly language into machine code. • Compiler = A program that changes source code (high-level language) to object code which that can be executed by a machine. • A computer program that executes instructions written in a programming language and do not produces the executable file. Summary

More Related