当前位置:首页 > 工业技术
MICROSOFT宏汇编5.0参考手册
MICROSOFT宏汇编5.0参考手册

MICROSOFT宏汇编5.0参考手册PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:徐非,宫照宇等译
  • 出 版 社:中国科学院计算所公司
  • 出版年份:1988
  • ISBN:
  • 页数:374 页
图书介绍:
《MICROSOFT宏汇编5.0参考手册》目录

Microsoft 宏汇编5.0参考手册 1

记号约定 1

一、程序 2

二、伪指令 10

1.伪指令 10

2.操作码 15

三、处理器 17

1.处理器指令解释 17

2.指令 26

四、协处理器 83

五、附表 103

宏汇编程序员指南 114

第一部分 程序 114

第一章 启动 114

1.1 建立你的系统 114

1.1.1 拷贝备份 114

1.1.2 选择一个系统配置方案 114

1.1.3 拷贝文件 115

1.1.4 设置环境变量 115

1.2 选择程序类型 116

1.3 程序开发周期 117

1.4 开发程序 118

1.4.1 编写与编辑汇编语言源文件 118

1.4.2 汇编源文件 121

1.4.3 转换交叉引用文件 121

1.4.4 创建库文件 121

1.4.5 连接目标文件 122

1.4.6 转换到·COM格式 122

1.4.7 调试 123

第二章 使用MASM 124

2.1 运行汇编器 124

2.1.1 汇编使用命令行 124

2.1.2 汇编使用提示 125

2.2 使用环境变量 126

2.2.1 INCLUDE环境变量 126

2.2.2 MASM环境变量 126

2.3 控制输出信息 127

2.4 使用MASM选项 127

2.4.1 指出段序方法 128

2.4.2 设置文件缓冲区大小 129

2.4.3 创建第一遍汇编清单 129

2.4.4 定义汇编变量 129

2.4.5 为浮点仿真器产生代码 130

2.4.6 获得命令行的帮助 131

2.4.7 为include文件设置检查路经 131

2.4.8 指出列表清单和交叉引用文件 131

2.4.9 指出大小写敏感性 132

2.4.10 在清单文件中除去表格 132

2.4.11 对非正确代码的检查 133

2.4.12 控制汇编统计显示 133

2.4.13 设置警告级 134

2.4.14 列出错条件 134

2.4.15 在屏幕上显示出错行 135

2.4.16 写符号信息到目标文件 135

2.5 读汇编清单 136

2.5.1 读清单中的代码 139

2.5.2 读Macro表 139

2.5.3 读结构和记录表 140

2.5.4 读段表和组表 140

2.5.5 读标识符表 142

2.5.6 读汇编统计 142

2.5.7 读第一遍清单 143

第三章 使用CREF 143

3.1 使用CREF 143

3.1.1 用命令行创建一个交叉引用清单 144

3.1.2 用提示创建一个交叉引用清单 144

3.2 读交叉引用清单 144

第二部分 伪指令 149

第四章 源代码的编写 149

4.1 汇编语句的编写 149

4.1.1 助记符和运算符的使用 150

4.1.2 注释的编写 150

4.2 符号的命令 150

4.3 常量 152

4.3.1 整型常量 152

4.3.1.1 用基数说明符说明整数 152

4.3.1.2 设置缺省基数 153

4.3.2 压缩二一十进制常量 153

4.3.3 实型常量 153

4.3.4 串常量 154

4.4 设置缺省汇编功能 155

4.5 源文件的结束 157

第五章 段结构定义 158

5.1 简化段的定义 158

5.1.1 内存模式 158

5.1.2 DOS段次序的说明 159

5.1.3 定义内存模式 160

5.1.4 定义简化段 161

5.1.5 预定义等式的使用 163

5.1.6 简化段的缺省值 164

5.1.7 缺省段名 164

5.2 完整段的定义 167

5.2.1 设置段次序的方式 167

5.2.2 定义完整段 168

5.2.2.1 使用定位类型控制定位 169

5.2.2.2 使用Use类型设置段字长 169

5.2.2.3 使用组合类型定义段的组合 170

5.2.2.4 使用类型控制段的结构 173

5.3 定义段组 175

5.4 建立段与寄存器的对应 176

5.5 段寄存器的初始化 178

5.5.1 初始化CS和IP寄存器 178

5.5.2 初始化DS寄存器 179

5.5.3 初始化SS和SP寄存器 180

5.5.4 初始化ES寄存器 181

5.6 段的嵌套 181

第六章 标号和变量的定义 183

6.1 类型说明的使用 183

6.2 定义代码标号 184

6.2.1 近程代码标号 184

6.2.2 过程标号 184

6.2.3 用伪指令LABEL定义代码标号 185

6.3 数据的定义及初始化 185

6.3.1 变量 186

6.3.1.1 整型变量 186

6.3.1.2 二一十进制变量 188

6.3.1.3 串变量 188

6.3.1.4 指针变量 189

6.3.1.5 实型变量 190

6.3.2 数组与缓冲区 193

6.3.3 建立变量标号 194

6.4 地址计数器的设置 194

6.5 数据的定位 195

第七章 结构和记录 198

7.1 结构 198

7.1.1 说明结构类型 198

7.1.2 定义结构变量 199

7.1.3 使用结构操作数 200

7.2 记录 200

7.2.1 说明记录类型 201

7.2.2 定义记录变量 202

7.2.3 使用记录操作数和记录变量 203

7.2.4 记录操作符 204

7.2.4.1 MASK操作符 204

7.2.4.2 WIDTH操作符 205

7.2.5 使用记录位域操作数 205

第八章 模块程序设计 207

8.1 说明全局符号 207

8.2 说明外部符号 208

8.3 使用多个模块 210

8.4 说明公用符号 212

8.5 指定库文件 215

第九章 操作数和表达式 216

9.1 伪指令的操作数 216

9.2 操作符 217

9.2.1 计算操作符 217

9.2.1.1 算术运算符 217

9.2.1.2 结构域名操作符 218

9.2.1.3 下标操作符 219

9.2.1.4 移位操作符 219

9.2.1.5 逻辑位操作符 220

9.2.2 关系运算符 220

9.2.3 替换段前缀操作符 221

9.2.4 类型操作符 222

9.2.4.1 PTR操作符 222

9.2.4.2 SHORT操作符 222

9.2.4.3 THIS操作符 223

9.2.4.4 HIGH和LOW操作符 223

9.2.4.5 SEG操作符 224

9.2.4.6 OFFSET操作符 224

9.2.4.7 ·TYPE操作符 225

9.2.4.8 TYPE操作符 225

9.2.4.9 LENGTH操作符 226

9.2.4.10 SIZE操作符 226

9.2.5 操作符优先级 227

9.3 当前位置记数器 228

9.4 向前引用 229

9.4.1 向前引用标号 229

9.4.2 向前引用变量 230

9.5 强制存储器操作类型 231

第十章 条件汇编 232

10.1 条件汇编伪操作的使用 232

10.1.1 利用IF和IFE伪操作测试表达式 232

10.1.2 利用IF1和IF2伪操作测试汇编“遍” 233

10.1.3 利用IFDEF和IFNDEF伪操作测试符号定义 233

10.1.4 利用IFB和IFNB伪操作检验宏指令参数 234

10.1.5 利用IFIDN和IFDIF伪操作比较宏指令参数。 234

10.2 条件错伪操作的使用 235

10.2.1 利用·ERR、·ERR1、·ERR2产生无条件错 236

10.2.2 利用·ERRE、·ERRNZ伪操作测试表达式 236

10.2.3 利用·ERRDEF和·ERRNDEF验证符号定义 237

10.2.4 利用·ERRB和·ERRND伪操作测试宏指令参数 237

10.2.5 利用·ERRIDN和·ERRDIF比较宏指令参数 238

第十一章 宏和重复块的作用 239

11.1 等值的使用 239

11.1.1 可重新定义的数字等值 239

11.1.2 不可重新定义的数字等值 240

11.1.3 串等值 241

11.2 宏的使用 242

11.2.1 宏的定义 242

11.2.2 宏的调用 243

11.2.3 局部变量的使用 244

11.2.4 从宏中退出 245

11.3 重复块的定义 245

11.3.1 REPT伪操作 246

11.3.2 IRP伪操作 246

11.3.3 IRPC伪操作 247

11.4 宏运算符的使用 247

11.4.1 替代运算符 248

11.4.2 文字串运算符 248

11.4.3 文字字符操作符 249

11.4.4 表达式的运算符 250

11.4.5 宏注解 251

11.5 宏的递归、嵌套和重定义 251

11.5.1 递归 251

11.5.2 宏定义的嵌套 251

11.5.3 宏调用的嵌套 252

11.5.4 宏的重新定义 253

11.5.5 防止不合理的取代 254

11.6 宏和等值的管理 254

11.6.1 使用Include文件 254

11.6.2 从内存中消除宏 255

第十二章 控制汇编的输出 256

12.1 发送信息到标准输出 256

12.2 列表文件中的页格式控制 256

12.2.1 设置文件标题 256

12.2.2 设置文件子标题 257

12.2.3 换页控制 257

12.3 控制输出内容 258

12.3.1 禁止和恢复语句输出 258

12.3.2 控制条件块的输出 259

12.3.3 控制宏指令的输出 260

12.4 控制交叉引用文件的输出 261

第十三章 8086系列 263

13.1 8080系列处理器的使用 263

13.1.1 处理器的区别 263

13.1.2 实方式与保护态 264

13.2 分段寻址 264

13.3 8086系列寄存器的使用 265

13.3.1 段寄存器 266

13.3.2 通用寄存器 267

13.3.3 其它寄存器 268

13.3.4 标志寄存器 268

13.3.5 8087系列寄存器 269

13.4 在DOS下使用80386处理器 269

第十四章 寻址方式 271

14.1 使用立即数 271

14.2 使用寄存器操作数 272

14.3 使用内存操作数 273

14.3.1 直接存储器操作数 273

14.3.2 间接存储器操作数 274

14.3.3 80386间接存储器操作数 277

第十五章 装入、存储和移动数据 281

15.1 传送数据 281

15.1.1 拷贝数据 281

15.1.2 交换数据 282

15.1.3 查找数据 282

15.1.4 传送标志 283

15.2 数据长度间的转换 283

15.2.1 扩展带符号的数值 283

15.2.2 扩展无符号的数值 284

15.2.3 移动和扩展数值 285

15.3 装入指针 285

15.3.1 装入近程指针 285

15.3.2 装入远程指针 286

15.4 传送数据进栈和出栈 287

15.4.1 进栈和出栈 287

15.4.2 使用栈 288

15.4.3 存标志进栈 289

15.4.4 存所有寄存器值进栈 289

15.5 从端口读取数据和写数据到端口 290

第十六章 算术运算和位处理 291

16.1 加法 291

16.1.1 直接加值 291

16.1.2 在多个寄存器中加值 292

16.2 减法 292

16.1.1 直接减值 292

16.1.2 在多个寄存器中减值 293

16.3 乘法 294

16.4 除法 295

16.5 用BCD数计算 296

16.5.1 非压缩的BCD数 296

16.5.2 压缩的BCD数 298

16.6 逻辑位处理 299

16.6.1 AND运算 299

16.6.2 OR运算 300

16.6.3 XOR运算 300

16.6.4 NOT运算 301

16.7 扫描置1的位 301

16.8 算术逻辑移位和循环移位 302

16.8.1 用常数进行乘和除 304

16.8.2 移动位到最低有效位置 305

16.8.3 调整屏蔽 305

16.8.4 移动多字值 305

16.8.5 移动多位 306

第十七章 程序流控制 307

17.1 转移 307

17.1.1 无条件转移 307

17.1.2 条件转移 308

17.1.2.1 比较与转移 309

17.1.2.2 基于标志状态的转移 311

17.1.2.3 测试位值与转移 312

17.1.2.4 测试与置位 312

17.2 循环 314

17.3 条件设置字节 315

17.4 过程的使用 316

17.4.1 过程调用 316

17.4.2 过程定义 316

17.4.3 利用栈进行参量传递 318

17.4.4 使用局部变量 319

17.4.5 建立栈框架 321

17.5 中断调用 322

17.5.1 中断调用 322

17.5.2 中断子程序的定义与重定义 324

17.6 内存范围检查 326

第十八章 串处理 327

18.1 建立串操作环境 327

18.2 串的移动 329

18.3 串的搜索 330

18.4 串的比较 331

18.5 串的填充 332

18.6 利用串输入值 333

18.7 端口的串传送 334

第十九章 使用算术协处理器进行计算 336

19.1 协处理器结构 336

19.1.1 协处理器的数据寄存器 336

19.1.2 协处理器的控制寄存器 337

19.2 仿真 337

19.3 使用协处理器指令 337

19.3.1 经典栈中隐含操作数的使用 338

19.3.2 内存地址操作数的使用 339

19.3.3 以寄存器格式指定操作数 340

19.3.4 以寄存器栈弹出格式指定操作数 340

19.4 内存存取的协调 341

19.5 数据传送 341

19.5.1 寄存器间的数据传送 342

19.5.2 常量装入 344

19.5.3 控制数据的传送 344

19.6 算术运算 345

19.7 程序流控制 349

19.7.1 比较操作数来控制程序流 350

19.7.2 指令执行后测试控制标志 353

19.8 超越函数指令的使用 353

19.9 协处理器的控制 354

第二十章 处理器控制 355

20.1 控制定时及边界调整 355

20.2 控制处理器 355

20.3 控制保护方式过程 355

20.4 控制80386 356

附录A 新的特点 357

A.1 MASM加强 357

A.1.1 80386支持 357

A.1.2 分段简单化 358

A.1.3 性能改善 358

A.1.4 增强的错误处理 358

A.1.5 新的选项 358

A.1.6 环境变量 359

A.1.7 串等值 359

A.1.8 RETF及RETN指令 359

A.1.9 公共变量 359

A.1.10 包含库文件 359

A.1.11 灵活的结构定义 359

A.2 Link加强 359

A.3 代码视图调试程序 359

A.4 SETENV 360

A.5 与汇编及编译的兼容性 360

附录B 错误信息及出口码 361

B.1 MASM信息及出口码 361

B.1.1 汇编程序状态信息 361

B.1.2 编号的汇编程序信息 361

B.1.3 未编号的错误信息 372

B.1.4 MASM出口码 373

B.2 CREF错误信息及出口码 374

相关图书
作者其它书籍
返回顶部