|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 无名侠 于 2014-1-22 16:48 编辑
这是微机原理与接口技术,马维华,第一版,书上P137的例题
- STACKSEG SEGMENT STACK
- DB 256 DUP(?)
- STACKSEG ENDS
- DATA1 SEGMENT WORD PUBLIC ‘CONST’
- CONS1 DW 100
- DATA1 ENDS
- DATA2 SEGMENT WORD PUBLIC ‘VARS’
- VAR1 DW ?
- DATA2 ENDS
- DATAGROUP GROUP DATA1 ,DATA2 ;组合两个数据段
- CODESEG SEGMENT PARA PUBLIC ‘CODE’ ;定义代码段
- ASSUME CS:CODESEG,DS:DATAGROUP,SS:STACKSEG
- START: MOV AX,DATAGROUP
- MOV DS,AX DS赋初值对该组寻址
- MOV AX,CONS1 ;AX=100
- MOV VAR1,AX ;VAR=100
- MOV AX,OFFSET VAR1 ;AX=2
- MOV AX,OFFSET DATA1 ;AX=2(已分配2个字节内存单元)
- MOV AX,OFFSET DATA2 ;AX=4(已分配4个字节内存单元)
- MOV AX,4C00H ;DOS功能调用,可正常返回到操作系统
- INT 21H
- CODESEG ENDS
- END START ;程序结束
复制代码
你看那条MOV AX,OFFSET DATA1 ;AX=2(已分配2个字节内存单元),为什么AX=2?
我认为DATA1的偏移地址应该是0,
|
|