首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

怎么用完整段模式来编写32位程序呢

2012-02-11 
如何用完整段模式来编写32位程序呢?相信大家都知道怎样在MASM的简化段模式来编写32位程序。本人想问问各位,

如何用完整段模式来编写32位程序呢?
相信大家都知道怎样在MASM的简化段模式来编写32位程序。

本人想问问各位,能否在MASM的完整段模式来编写32位程序呢?
本人也曾尝试过,写了些简单的代码,但一直出现问题,也请各位指点。

代码如下:

CODESSEGMENT   USE32
ASSUME   CS:CODES
START:
MOV   AX,CODES
MOV   DS,AX
MOV   AL,BVAR
MOV   AH,BVAR+3
MOV   BX,WVAR
MOV   CX,WVAR+2
MOV   DX,WVAR+3
MOV   ESI,DVAR
MOV   EDI,DVAR+8
MOV   AX,4C00H
INT   21H

BVAR   DB01H,   1,   10,   100
WVAR   DW0102H,   1000,   100*100
DVAR   DD01020304H,   100000,   1000000,   10000000
BVAR2   DB 'A ',   'ABCD '
            DB0,   0FFH,   ?
WVAR2   DW458H,   0E267H,   0,   0FFFFH
DVAR2   DD0FC152BH,   0,   0FFFFFFFFH
DVAR3   DDWVAR2
DVAR4   DDBVAR2+2
FVAR   DF010203040506H
QVAR   DQ0102030405060708H,   49216C3BH
TVAR   DT0102030405060708090AH,   1
SBVAR   SBYTE-100
SWVAR   SWORD-100
SDVAR   SDWORD-100
BARRAY   BYTE4   DUP   (91)
WARRAY   DW5   DUP   (1000)
DARRAY   DD3   DUP   (80,   2   DUP   (-80))

CODESENDS
END   START
;代码结束。

[解决办法]
楼主这个程序就应该是 dos16 类的吧, use32 是不对的. 不过, 程序开始加上下面的两行后, 是可以使用 32 位寄存器的
.model small
.386

热点排行