w501.lst
来自「汇编语言学习的资料希望对大家有很大的帮助啊!!」· LST 代码 · 共 107 行
LST
107 行
Microsoft (R) Macro Assembler Version 6.00 10/27/03 11:01:29
w501.asm Page 1 - 1
.model small
.stack
0000 .data
0000 02 04 06 08 0A n01 db 2,4,6,8,10
0005 0000 result dw ?
0000 .code
.startup
0000 *@Startup:
0000 BA ---- R * mov dx, DGROUP
0003 8E DA * mov ds, dx
0005 8C D3 * mov bx, ss
0007 2B DA * sub bx, dx
0009 D1 E3 * shl bx, 001h
000B D1 E3 * shl bx, 001h
000D D1 E3 * shl bx, 001h
000F D1 E3 * shl bx, 001h
0011 FA * cli
0012 8E D2 * mov ss, dx
0014 03 E3 * add sp, bx
0016 FB * sti
;****************************
;求AX绝对值的单分支结构
;****************************
.if ax<0 ;ax作为无符号数处理,程序错误!
0017 83 F8 00 * cmp ax, 000h
001A 73 02 * jae @C0001 ;ax无论为任何数,都将转移!
001C F7 D8 neg ax
.endif
001E *@C0001:
001E A3 0005 R mov result,ax
;****************************
;求AX绝对值的单分支结构
;****************************
.if sword ptr ax<0 ;ax作为有符号数处理,程序正确!
0021 83 F8 00 * cmp sword ptr ax, 000h
0024 7D 02 * jge @C0003
0026 F7 D8 neg ax
.endif
0028 *@C0003:
0028 A3 0005 R mov result,ax
;+++++++++++++++++++++++++++++
;双分支结构程序段
;+++++++++++++++++++++++++++++
.if ax==5 ;判断是否相等,有符号或无符号两可。
002B 83 F8 05 * cmp ax, 005h
002E 75 07 * jne @C0005
0030 8B D8 mov bx,ax
0032 B8 0000 mov ax,0
.else
0035 EB 01 * jmp @C0007
0037 *@C0005:
0037 48 dec ax
.endif
0038 *@C0007:
;-----------------------------
.exit 0
0038 B8 4C00 * mov ax, 04C00h
003B CD 21 * int 021h
end
Microsoft (R) Macro Assembler Version 6.00 10/27/03 11:01:29
w501.asm Symbols 2 - 1
Segments and Groups:
N a m e Size Length Align Combine Class
DGROUP . . . . . . . . . . . . . GROUP
_DATA . . . . . . . . . . . . . 16 Bit 0007 Word Public 'DATA'
STACK . . . . . . . . . . . . . 16 Bit 0400 Para Stack 'STACK'
_TEXT . . . . . . . . . . . . . 16 Bit 003D Word Public 'CODE'
Symbols:
N a m e Type Value Attr
@CodeSize . . . . . . . . . . . Number 0000h
@DataSize . . . . . . . . . . . Number 0000h
@Interface . . . . . . . . . . . Number 0000h
@Model . . . . . . . . . . . . . Number 0002h
@Startup . . . . . . . . . . . . L Near 0000 _TEXT
@code . . . . . . . . . . . . . Text _TEXT
@data . . . . . . . . . . . . . Text DGROUP
@fardata? . . . . . . . . . . . Text FAR_BSS
@fardata . . . . . . . . . . . . Text FAR_DATA
@stack . . . . . . . . . . . . . Text DGROUP
n01 . . . . . . . . . . . . . . Byte 0000 _DATA
result . . . . . . . . . . . . . Word 0005 _DATA
0 Warnings
0 Errors
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?