Filename Extensions and Comments
The following slides of this week explain the sample program, ReadSub.asm, in detail.
Filename Extensions
A filename extension indicates the kind of data stored in the file.
| Extension |
Comments |
.ASM |
Assembly language source file (uncompiled) |
.BAT |
Batch file, ASCII file of DOS commands, [EXECUTABLE] |
.EXE |
Executable file (program) (binary) [EXECUTABLE] |
.LST |
List file |
.MAP |
A text file that contains information about the segments contained in a program being linked |
.OBJ |
Object file |
.PDB |
The program database file with which the debugger is then able to display the program’s source code and provide supplemental information about the program. |
TITLE Directive
A directive is a command that is recognized and acted upon by the assembler. It is not related to the Intel instruction set. Directives are used for defining logical segments, choosing a memory model, defining variables, creating procedures, and so on.
TITLE Read and Subtract (ReadSub.asm)
The
TITLE directive marks the entire line as a comment.
Comments
Comments can be specified in two ways:
|
ReadSub.asm
|
COMMENT!
*
* This program reads and subtracts 32-bit hexadecimal integer from 50000h.
*
!
INCLUDE Irvine32.inc
.data
prompt1 BYTE 0Dh, 0Ah, "Calculate an Arithmetic Expression of 50000h - Y:",
0Dh, 0Ah, 0
prompt2 BYTE "Enter the value of operand Y: ", 0
prompt3 BYTE 0Dh, 0Ah, "The result is ", 0
X DWORD 50000h
Y DWORD ?
result DWORD ?
.code
main PROC
mov edx, OFFSET prompt1
call WriteString ; print prompt1
mov edx, OFFSET prompt2
call WriteString ; print prompt2
call ReadHex
mov Y, eax ; Y = eax (the input)
mov eax, X ; eax = X (50000h)
; calculate 50000h – Y
sub eax, Y ; eax = X (50000h) – Y (the input)
mov result, eax ; result = eax (X – Y)
mov edx, OFFSET prompt3
call WriteString ; print prompt3
call WriteHex ; print eax (result)
exit
main ENDP
END main
|
|
An Execution Example
|
Calculate an Arithmetic Expression of 50000h – Y:
Enter the value of operand Y: 4000
The result is 0004C000
|
†The white italic text with a navy background color is entered by users.
“I’m not afraid of death;
I just don’t want to be there when it happens.”
— Woody Allen
|