回 帖 发 新 帖 刷新版面

主题:是不是每一个程序在开始的时候都要把定义的数据放入数据段???

???

回复列表 (共5个回复)

沙发

不是

板凳

请一楼的,说得更详细一点,好么
                          署名:   汇编菜鸟

3 楼


C:\DOCUME~1\erping\??>debug
-a
0B33:0100 jmp   10f
0B33:0102 db    'Hello world!', '$'   ;数据定义
0B33:010F mov   dx, 102               
0B33:0112 mov   ah, 9
0B33:0114 int   21                    ;输出  Hello world!
0B33:0116 mov   ax, 4c00
0B33:0119 int   21
0B33:011B
-rcx
CX 0000
:119
-n1.com
-w
Writing 00119 bytes
-q

C:\DOCUME~1\erping\??>1
Hello world!
C:\DOCUME~1\erping\??>

4 楼

一楼太复杂了
其实很简单,在C里面就有例子
这个问得不好

5 楼

汇编的数据和代码的本质都是机器语言,有空看一下计算机组成原理。
数据和代码是可以混合的。
CODE SEGMENT
  ASSUME CS:CODE,DS:CODE
START: JMP START1
  NUM DB   100
START1: MOV AX,CODE
         MOV DS,AX
         MOV AL,10
         SUB NUM,AL
         MOV AH,04CH
         INT 21H
CODE ENDS
     END START
上面中NUM就是数据
对于NUM的查看就自己搞把(本来我上传了一个输入输出函数库的,可惜没有人回复)。

我来回复

您尚未登录,请登录后再回复。点此登录或注册