📄 chapter4.htm
字号:
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">5、初始化的近程数据段</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">格式:.DATA</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">隐含段名为@DATA,定位类型为WORD,</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">组合类型为PUBLIC,类别标志符为‘DATA’</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">6、未初始化的近程数据段</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">格式:.DATA?</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">隐含段名为@DATA?,定位类型为WORD,</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">组合类型为PUBLIC,类别标志符为‘BSS’</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">7、常数段</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">格式:.CONST</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">隐含段名为@CONST。</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">8、隐含的GROUP操作</font></p>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">DGROUP GROUP @DATA,@CONST,@DATA?,@STACK</font></p>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">9、隐含的ASSUME操作</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">小模式/压缩模式:</font></p>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">ASSUME CS:@CODE,DS:DGROUP,SS:DGROUP</font></p>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF"> </font><font
face="宋体" size="5" color="#FFFF00">当不与高级语言连接时,可以不区分初始化的、未初始化的变量和常数数据,都可以在
.DATA中使用。</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:</font></p>
<blockquote>
<blockquote>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">DOSSEG</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">.MODEL SMALL</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">.STACK</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">.DATA</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MSG DB “HELLO,WORLD”,‘$’</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">.CODE</font></p>
</blockquote>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">START:MOV AX,DGROUP</font></p>
<blockquote>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV DS,AX</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">LEA DX,MSG</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV AH,9</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">INT 21H</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV AX,4C00H</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">INT 21H</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">END START</font></p>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
<h3 align="left"><font FACE="宋体" size="5" color="#FFFFFF">七、指定地址</font></h3>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">1、指定初始地址</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">格式:ORG 表达式</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:</font></p>
<blockquote>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">ORG 100H</font></p>
</blockquote>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">2、地址取偶</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">格式:EVEN</font></p>
</blockquote>
<h3 align="left"><font FACE="宋体" size="5" color="#FFFFFF">八、注释和标记符</font></h3>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">1、注释</font></p>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">1)COMMENT /
注释 /</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">2);注释</font></p>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">2、标记符</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">1)续行---&</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:</font></p>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">DATA DW 12,34,</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">& 56</font></p>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">2)语句间隔符---!</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:</font></p>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV AX,@DATA !MOV
DS,AX</font></p>
</blockquote>
</blockquote>
<h3 align="left"><font FACE="宋体" size="5" color="#FFFFFF">九、运算符</font></h3>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">1、分析运算符</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">1)取当前地址计数器的值---$</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:</font></p>
<blockquote>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">VAL DW 12H,34H</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">NUMER EQU $-VAL</font></p>
</blockquote>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">2)取段地址值---SEG</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:</font></p>
<blockquote>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV AX,SEG VAL</font></p>
</blockquote>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">3)取有效/偏移地址---OFFSET</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:</font></p>
<blockquote>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV BX,OFFSET
VAL</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">LEA BX,VAL</font></p>
</blockquote>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">4)取定义的变量个数---LENGTH</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">5)取定义的字节个数---SIZE</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">6)取定义的变量的类型的字节个数---TYPE</font></p>
<div align="center"><center><table border="1" width="77%" bordercolor="#00FF00">
<tr>
<td width="16%" align="center"><big><big><font color="#FFFFFF">类型</font></big></big></td>
<td width="16%" align="center"><big><big><font color="#FFFFFF">BYTE</font></big></big></td>
<td width="17%" align="center"><big><big><font color="#FFFFFF">WORD</font></big></big></td>
<td width="17%" align="center"><big><big><font color="#FFFFFF">DWORD</font></big></big></td>
<td width="17%" align="center"><big><big><font color="#FFFFFF">NEAR</font></big></big></td>
<td width="17%" align="center"><big><big><font color="#FFFFFF">FAR</font></big></big></td>
</tr>
<tr>
<td width="16%" align="center"><big><big><font color="#FFFFFF">TYPE值</font></big></big></td>
<td width="16%" align="center"><big><big><font color="#FFFFFF">1</font></big></big></td>
<td width="17%" align="center"><big><big><font color="#FFFFFF">2</font></big></big></td>
<td width="17%" align="center"><big><big><font color="#FFFFFF">4</font></big></big></td>
<td width="17%" align="center"><big><big><font color="#FFFFFF">-1</font></big></big></td>
<td width="17%" align="center"><big><big><font color="#FFFFFF">-2</font></big></big></td>
</tr>
</table>
</center></div><p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:</font></p>
<blockquote>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">VAL DW 5
DUP(?)</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">...</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV AX,LENGTH VAL</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV BX,SIZE VAL</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV CX,TYPE VAL</font></p>
</blockquote>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">2、综合运算符</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">1)指定数据或地址类型---PTR</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">2)重新指定变量类型---THIS/LABEL</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:</font></p>
<blockquote>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">VAL_B EQU THIS
BYTE</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">VAL DW 1234H
</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">...</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">VAL_B LABEL BYTE</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">VAL DW 1234H</font></p>
</blockquote>
</blockquote>
</blockquote>
<h3 align="left"><font FACE="宋体" size="5" color="#FFFFFF">十、程序结束</font></h3>
<blockquote>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">END [标号]</font></p>
</blockquote>
</blockquote>
<p align="left"> </p>
<h2 align="center"><font face="宋体" color="#FFFFFF"><big><big>§4.3
典型结构程序设计</big></big></font></h2>
<h3 align="left"><font face="宋体" color="#FFFFFF"><big><big>一、几个常用的DOS功能调用</big></big></font></h3>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">1、显示一个字符</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">入口:(AH)=2</font></p>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF"> (DL)=显示字符的ASCII码。</font></p>
</blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">执行:INT 21H</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">例如:显示字母‘A’</font></p>
<blockquote>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV AH,02</font></p>
<p align="left"><font FACE="宋体" size="5" color="#FFFFFF">MOV DL,‘A’</font></p>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -