masm5.0-dosbox0.74-MasmForWindows.zip
资源文件列表:

DOSBox0.74-win32-installer.rar 1.38MB
masm for windows.rar 37.13MB
MASM5.0/
MASM5.0/CREF.EXE 15.46KB
MASM5.0/debug.exe 20.15KB
MASM5.0/DEBUG32.EXE 88.59KB
MASM5.0/edit.com 68.25KB
MASM5.0/ERROUT.EXE 9.28KB
MASM5.0/EXEMOD.EXE 11.86KB
MASM5.0/EXEPACK.EXE 14.46KB
MASM5.0/LIB.EXE 31.4KB
MASM5.0/LINK.EXE 63.46KB
MASM5.0/MASM.EXE 100.76KB
MASM5.0/README.DOC 9KB
MASM5.0/SETENV.EXE 10.35KB
MASM5.0/TD.EXE 475.72KB
资源介绍:
masm5.0 dosbox0.74 masm for windows.rar
Microsoft Macro Assembler Package
Version 5.00
Text files on the Macro Assembler disks are tabbed to save
disk space. If your printer does not automatically handle
tabs during printing, you must use a print program that
expands tabs. For example, use the DOS PRINT program to print
this and other document or source files on the disk.
Note to DOS 3.0 Users
Because of an incompatibility between DOS 3.0 and the batch
file enhancer on this disk, you cannot run the setup batch
files under DOS 3.0. Instead, follow the setup instructions in
Chapter 1 of the Programmer's Guide. You can run the CodeView
demo on Disk 2. Type DEMO to run DEMO.BAT.
==( MASM.EXE )==
New Feature
The /LA option has been added to specify a complete listing
of all symbols, macros, and false conditionals. It is
equivalent to using the .LIST, .LFCOND, .LALL, and .CREF
directives throughout the source file. The option overrides
any conflicting directives in the source file.
Clarification
The PTR operator can be used to specify the size of a
register indirect operand for a CALL or JMP instruction.
However, the size cannot be specified with NEAR or FAR. Use
WORD or DWORD instead. (In 80386 32-bit segments, use DWORD
or FWORD.) Examples are shown below:
; 8086, 80826, or 80386 16-bit mode
jmp WORD PTR [bx] ; Legal near jump
call NEAR PTR [bx] ; Illegal near call
call DWORD PTR [bx] ; Legal far call
jmp FAR PTR [bx] ; Illegal far jump
; 80386 32-bit mode only
jmp DWORD PTR [bx] ; Legal near jump
call NEAR PTR [bx] ; Illegal near call
call FWORD PTR [bx] ; Legal far call
jmp FAR PTR [bx] ; Illegal far jump
This limitation only applies to register indirect operands.
NEAR or FAR can be applied to operands associated with
labels. Examples are shown below:
jmp NEAR PTR pointer[bx] ; Legal

call FAR PTR location ; Legal
Š
Correction
When evaluating expressions, MASM does 16-bit arithmetic except
when the 80386 processor is enabled. If the .386 or .386P
directive has been given, MASM does 32-bit arithmetic. This
behavior is consistent with earlier versions of MASM, which
always did 16-bit arithmetic. The notes in Sections 9.2.1 and
9.2.1.5 of the Programmer's Guide are incorrect. They should say
that MASM always does 16-bit arithmetic.
Clarification
The description of declaring external symbols in Section 8.2
is incomplete and the example is incorrect. You cannot
access the segment of an external far data variable with the
@FARDATA equate. Instead you must use the SEG operator as
shown below:
.FARDATA
EXTRN fvar:WORD ; FAR variable in far
data
.CODE
start: ASSUME es:SEG fvar ; Tell the assembler
mov ax,SEG fvar ; Tell the processor
mov es,ax
This is the same limitation described for communal variables
in Section 8.4. The reason is that under the DOS segment
conventions, multiple far data segments share the same name
(FAR_DATA) and have private combine type. Segments with the
same name can only be distinguished indirectly using the SEG
operator.
Clarification
The .286P and .386P processor directives enable instructions
that are normally used in systems programming. However,
some of these instructions do not necessarily require that
the processor be in privileged or protected mode.
Correction
Public absolute symbols must be declared during pass 1.
This
means that aliases for absolute symbols or other forward
references to them will cause errors. For example, the
following code generates an error:
PUBLIC lines
lines EQU rows
rows EQU 25