《微型机编程工具和编程环境》求取 ⇩

第一部分 编程工具和编程环境1

第一章 编程工具2

1.0 引言2

1.1 程序开发硬件2

1.2 参考资料2

1.3 软件工具3

1.3.1 文本编辑器3

1.3.2 汇编器3

1.3.3 连接器4

1.3.4 库和库设备4

1.3.4.1 Microsoft PASCAL和FORTRAN数学库5

1.3.4.2 Intel 8087模拟器和支持库7

1.3.4.3 其它库7

1.3.5 调试程序7

1.3.6 辅助设备8

1.4 选择开发系统8

1.4.1 Microsoft宏汇编器(Microsoft Macro Assembler)8

1.4.2 Intel ASM869

1.5 软件工程9

1.5.1 程序开发的阶段10

1.5.1.1 定义及资源分配10

1.5.1.2 程序设计10

1.5.1.3 程序编码11

1.5.1.4 程序文档11

1.5.1.5 正确性检验13

1.5.2 工程技术15

1.5.2.1 模块化15

1.5.2.2 标准化15

1.5.2.3 程序流程图16

第二章 程序环境18

2.0 引言18

2.1 内存结构18

2.1.1 内存空间18

2.1.2 物理地址计算19

2.2 程序驻留19

2.2.1 段式内存19

2.2.2 逻辑地址20

2.2.3 附加段寄存器21

2.2.4 例外段分配22

2.2.5 重新定位和装入26

2.3 程序结构26

2.3.1 惯用的段定义26

2.3 2 SEGMENT和ENDS指令28

2.3.3 ASSUME指令29

2.3.4 GROUP指令30

2.3.5 程序设计考虑因素31

2.4 共同驻留的软件32

2.4.1 回避系统软件33

2.4.2 IBM的内存映射33

2.4.3 IBM BIOS33

2.4.4 自举加载器35

2.4.5 DOS36

2.4.6 兼容性问题36

2.5 生成一个定制的系统37

2.5.1 回避DOS37

2.5.2 定制自举加载器38

2.5.3 配置系统盘40

第三章 对硬件编程44

3.1 微处理器44

3.1.1 8086/8088处理器家族44

3.1.2 8087数学协处理器家族45

3.2 中断46

3.2.1 中断机构46

3.2.2 中断向量表47

3.2.3 获取中断控制49

3.2.4 MS DOS下的中断51

3.2.5 保护安装的中断52

3.2.6 设置段寄存器53

3.2.7 截取执行55

3.2.8 中断处理与优先级57

3.2.9 外部中断57

3.2.10 PS/2系统上的中断共享60

3.3 其它可编程组件60

3.3.1 8255可编程外围界面(PPI)61

3.3.2 系统定时器61

3.3.2.1 访问系统定时器62

3.3.2.2 再编程定时器66

3.3.3 对扬声器的输出78

第二部分 编程技术85

第四章 文本管理86

4.1 文本处理86

4.1.1 字符代码86

4.1.2 控制码87

4.1.3 文本文件块88

4.2 文本编辑器的结构88

4.2.1 文本缓冲区88

4.2.2 嵌入控制码89

4.2.3 终止符字节89

4.2.4 位移字节92

4.2.5 其它控制字符95

4.2.6 用控制码给文本定块95

4.2.7 以行为基础和以屏幕为基础的编辑器98

4.3 文本文件管理98

4.3.1 文本文件结构98

4.3.2 文本输入98

4.3.3 文本文件显示98

4.3.3.1 移动光标实例99

4.3.3.2 无光标编辑110

4.3.4 视频到内存操作127

4.4 编辑文本文件130

4.4.1 文件扩展和压缩130

4.4.2 文本文件控制133

4.4.3 基本的编辑操作134

4.4.3.1 插入134

4.4.3.2 替换134

4.4.3.3 删除134

4.5 特殊的文本操作135

4.5.1 连续输入135

4.5.2 文本排版147

4.5.2.1 填加空格147

4.5.2.2 调和空间148

第五章 数字计算149

5.0 引言149

5.1 8087数字协处理器的范围与设计149

5.1.1 8087芯片概述150

5.1.2 局限性150

5.1.3 8086与8087界面151

5.1.4 同步操作151

5.2 8087结构152

5.2.1 堆栈寄存器152

5.2.2 控制寄存器153

5.2.3 状态寄存器155

5.2.4 指令与数据指针156

5.2.5 8087标志寄存器156

5.3 数字数据类型157

5.3.1 数字数据转换158

5.3.2 数据类型编码158

5.3.3 8087的非正规数159

5.4 对8087编程160

5.4.1 8087编码格式161

5.4.2 8087异常处理161

5.5 8087指令组163

5.5.1 数据传递指令163

5.5.2 算法指令164

5.5.3 比较指令165

5.5.4 超越函数指令166

5.5.5 常数指令166

5.5.6 处理器控制指令167

5.6 仿真器和支持软件168

5.6.1 Intel支持软件包168

5.6.1.1 使用8087仿真器169

5.6.1.2 使用十进制转换程序库172

5.6.1.3 使用初等函数程序库184

5.6.2 Microsoft仿真器186

5.7 计算机算法原理187

5.7.1 内存中数据的排列187

5.7.2 向量和矩阵操作189

5.7.3 线性系统的处理189

5.7.4 迭代法和Heuristic法191

第六章 数字字母显示193

6.0 引言194

6.1 IBM视频硬件194

6.1.1 来自BIOS的视频数据195

6.1.2 IBM/PC和PS/2视频系统204

6.1.2.1 单色显示适配器(MDA)204

6.1.2.2 彩色图形适配器(CGA)206

6.1.2.3 增强图形适配器(EGA)207

6.1.2.4 PCjr显示器硬件208

6.1.2.5 PS/2 30型MCGA系统209

6.1.2.6 PS/2 50/60/70/80型VGA系统209

6.1.2.7 IBM高分辨率板210

6.1.3 光标操作210

6.1.3.1 隐藏光标210

6.1.3.2 修改光标210

6.1.3.3 控制光标212

6.1.4 对6845 CRT控制器编程218

6.1.4.1 开关CRT218

6.1.4.2 字符同步输出220

6.2 字母数字视频显示编程221

6.2.1 可移植性讨论221

6.2.2 DOS字符输出视频服务221

6.2.3 BIOS字符输出视频服务225

6.2.4 获得直接存取视频缓冲区234

6.2.5 彩色/单色兼容243

6.2.6 字符图形246

6.2.6.1 画框技巧246

6.2.6.2 属性操作246

6.2.7 BLOCKDEMO程序246

第七章 通讯258

7.1 串行和并行258

7.1.1 对并行口编程259

7.1.2 通过DOS访问并行口259

7.1.3 通过BIOS访问并行口259

7.1.3.1 BIOS服务号0,INT 17H260

7.1.3.2 BIOS服务号1,INT 17H260

7.1.3.3 BIOS服务号2,INT 17H261

7.1.4 并行口的直接控制262

7.1.4.1 接口地址262

7.1.4.2 输出数据功能263

7.1.4.3 输入状态功能263

7.1.4.4 输出控制功能265

7.1.4.5 打印机中断266

7.1.5 打印机应用的编程技术267

7.1.5.1 基本的打印机控制功能267

7.1.5.2 行索引268

7.1.5.3 文本对中269

7.1.5.4 格式长度269

7.1.6 打印机控制样本例程269

7.2 串行接口272

7.2.1 通讯协议273

7.2.2 对串行接口编程273

7.2.2.1 用DOS对串行口编程274

7.2.3 通过BIOS访问串行接口274

7.2.3.1 BIOS服务号0,INT 14H274

7.2.3.2 BIOS服务号1,INT 14H277

7.2.3.3 BIOS服务号2,INT 14H278

7.2.3.4 BIOS服务号3,INT 14H278

7.2.4 串行口的直接控制278

7.2.4.1 发送器保持寄存器THR(xF8H)280

7.2.4.2 接收器数据寄存器RDR(xF8H)281

7.2.4.3 波特率分部(LSD)(xF8H)和(MSB)(xF9H)281

7.2.4.4 中断启动寄存器IER(xF9H)282

7.2.4.5 中断识别寄存器IIR(xFAH)283

7.2.4.6 线路控制寄存器LCK(xFBH)283

7.2.4.7 调制解调器控制寄存器MCR(xFCH)284

7.2.4.8 线路状态寄存器LSR(xFDH)284

7.2.4.9 调制解调器状态寄存器MSR(xFEH)286

7.3 通讯中的硬件中断286

7.3.1 中断服务例程288

7.3.2 环形缓冲器289

7.3.3 开发中断驱动通讯程序289

7.3.4 TERMINAL程序290

第八章 颜色和图形304

8.0 引言305

8.1 EGA/VGA结构305

8.1.1 APA高分辨率模式305

8.1.2 视频内存结构305

8.1.3 颜色和调色板307

8.1.4 边界颜色和全局寄存器308

8.1.5 字母数字模式中的颜色309

8.2 对EGA-VGA图形编程319

8.2.1 扩展BIOS视频操作320

8.2.1.1 BIOS扩展服务号16,INT 10H(AH=16:设置调色板寄存器)320

8.2.1.2 BIOS扩展服务号17,INT 10H(AH=17:字符生成器)322

8.2.1.3 BIOS扩展服务号18,INT 10H(AH=18:EGA信息和多种服务)324

8.2.1.4 BIOS扩展服务号19,INT 10H(AH=19:写字串)325

8.2.1.5 BIOS扩展服务号26,INT 10H(AH=26:监控器和适配器信息)325

8.2.2 图形读写模式326

8.2.3 视图子系统可编程硬件326

8.2.3.1 通用图形寄存器326

8.2.3.2 定序寄存器327

8.2.3.3 CRT控制寄存器327

8.2.3.4 图形控制寄存器327

8.2.3.5 属性控制寄存器328

8.2.4 开发图形328

8.2.5 字节边界例程328

8.2.6 字节和象素边界例程330

8.2.7 缓冲区地址计算332

8.2.8 画直线335

8.2.8.1 水平和竖直线335

8.2.8.2 斜线336

8.2.9 用8087画图336

8.2.9.1 圆逼近337

8.2.9.2 其它画图功能337

8.2.9.3 程序GRAGDEMO337

8.2.10 矩形填充例程360

8.2.11 图形块显示例程360

8.2.12 USFLAG程序360

8.2.13 屏幕绘图算法374

8.3 文本与图形375

8.3.1 图形模式中的文本字符显示375

8.3.2 作为图形工具的文本376

8.3.2.1 可选择的字符根376

8.3.2.2 同时使用多种字符根376

8.3.3 图形模式中的常用字符376

8.3.3.1 软件字符生成器376

8.3.3.2 使用BIOS字符生成器377

8.4 动作与图象变换377

8.4.1 图象显示377

8.4.2 异或(XOR)象素378

8.4.3 BILBOARD程序378

第九章 数据输入和存贮384

9.1 键盘384

9.1.1 键盘硬件及操作384

9.1.1.1 LOCK键385

9.1.1.2 SYS REQ键385

9.1.1.3 HOT键385

9.1.2 BIOS中的键盘数据386

9.1.2.1 键盘缓冲区386

9.1.2.2 第一个键盘状态字节387

9.1.2.3 第二个键盘状态字节388

9.1.3 键盘中断处理程序388

9.1.4 替换键盘中断处理程序389

9.1.5 截取键盘中断392

9.1.5.1 扫描码表的问题392

9.1.5.2 抑制HOT键392

9.1.5.3 生成HOT键397

9.1.5.4 BIOS键盘截取398

9.1.6 键盘不反弹和响应速率401

9.1.6.1 改变延迟和响应速率401

9.1.6.2 TYPMATIC程序401

9.1.7 对锁模式键编程(Num、Caps、Scroll)407

9.1.7.1 从软件中开关LOCK键407

9.1.7.2 TOGGLE程序407

9.1.8 BREAK键409

9.1.8.1 使用Break键处理程序409

9.1.8.2 DOS Ctrl-C处理程序410

9.2 对键盘输入编程411

9.2.1 BIOS键盘服务411

9.2.1.1 BIOS服务号0,INT 16H(AH=1:读键盘状态)411

9.2.1.2 BIOS服务号2,INT 16H(AH=2:取键盘状态字节)412

9.2.1.3 BIOS服务号3,INT 16H(AH=3:设置响应速率和延迟时间)412

9.2.2 DOS键盘服务412

9.2.2.1 DOS功能号10,INT 21H(缓冲区的键盘输入)413

9.3 磁盘存贮导论413

9.3.1 DOS下的盘存贮机置414

9.3.2 磁盘存贮格式414

9.3.2.1 BIOS下的磁盘格式415

9.3.2.2 DOS下的磁盘格式416

9.3.3 DOS磁盘操作的逻辑结构416

9.3.3.1 磁盘转换区(DAT)417

9.3.3.2 文件控制块(FCB)417

9.3.3.3 程序段前缀(PSP)418

9.4 对磁盘操作编程419

9.4.1.1 BIOS服务号0,INT 13H(AH=0:重置软盘系统)419

9.4.1.2 BIOS服务号1,INT 13H(AH=1:读上次软盘操作的状态)420

9.4.1.3 BIOS服务号2,INT 13H(AH=2:读软盘扇区到内存)420

9.4.1.4 BOIS服务号3,INT 13H(AH=3:将内存写入软盘扇区)420

9.4.1.5 BIOS服务号4,INT 13H(AH=4:检查软盘扇区)421

9.4.1.6 BIOS服务号5,INT 13H(AH=5:格式化软盘磁道)421

9.4.2 DOS服务综述421

9.4.2.1 DOS服务号14,INT 21H(AH=14:设置缺省磁盘驱动器)422

9.4.2.2 DOS服务号23,INT 21H(AH=23:改变文件名)422

9.4.2.3 DOS服务号25,INT 21H(AH=25:获得缺省的驱动器)423

9.4.2.4 DOS服务号26,INT 21H(AH=26:获得缺省的驱动器)423

9.4.2.5 DOS服务号41,INT 21H(AH=41:从串创建FCB)423

9.4.3 使用FCB的DOS磁盘服务424

9.4.3.1 DOS服务号15,INT 21H(AH=15:使用FCB打开文件)424

9.4.3.2 DOS服务号16,INT 21H(AH=16:使用FCB关闭文件)424

9.4.3.3 DOS服务号20,INT 21H(AH=20:使用FCB顺序读文件)424

9.4.3.4 DOS服务号21,INT 21H(AH=21:使用FCB顺序写文件)424

9.4.3.5 DOS服务号22,INT 21H(AH=22:使用FCB创建文件)425

9.4.4 使用文件句柄的DOS磁盘服务425

9.4.4.1 DOS服务号60,INT 21H(AH=60:创建文件并获得句柄)425

9.4.4.2 DOS服务号61,INT 21H(AH=61:打开文件并获得句柄)426

9.4.4.3 DOS服务号62,INT 21H(AH=62:使用句柄关闭文件)427

9.4.4.4 DOS服务号63,INT 21H(AH=63:使用句柄读文件)427

9.4.4.5 DOS服务号64,INT 21H(使用句柄写文件)427

9.4.4.6 DOS服务号78,INT 21H(AH=78:搜寻第一个匹配的ASCIIZ串)427

9.4.4.7 DOS服务号79,INT 21H(AH=21:搜寻下一个匹配的文件名)428

9.4.5 FILECOM程序428

1991《微型机编程工具和编程环境》由于是年代较久的资料都绝版了,几乎不可能购买到实物。如果大家为了学习确实需要,可向博主求助其电子版PDF文件(由韩耀武等编 1991 北京希望电脑公司 出版的版本) 。对合法合规的求助,我会当即受理并将下载地址发送给你。

高度相关资料

人-机-环境系统工程学(1987 PDF版)
人-机-环境系统工程学
1987 北京:科学普及出版社
适用于IBM PC AT 286、386及其兼容机 微型机编程工具和编程环境( PDF版)
适用于IBM PC AT 286、386及其兼容机 微型机编程工具和编程环境
北京希望电脑公司
环境工程(1990 PDF版)
环境工程
1990 成都:成都科技大学出版社
土建工程常用微机程序汇编(1987 PDF版)
土建工程常用微机程序汇编
1987 北京:水利电力出版社
抗震加固典型工程及施工机具汇编(1983 PDF版)
抗震加固典型工程及施工机具汇编
1983 天津:天津科学技术出版社
振动环境工程(1986 PDF版)
振动环境工程
1986 北京:航空工业出版社
环境工程学(1992 PDF版)
环境工程学
1992 北京:高等教育出版社
微型记算机管理程序选编(1988 PDF版)
微型记算机管理程序选编
1988 合肥:中国科学技术大学出版社
环境工程学(1986 PDF版)
环境工程学
1986 北京:中国环境科学出版社
UNIX编程环境(1999 PDF版)
UNIX编程环境
1999 北京:机械工业出版社
环境工程(1990 PDF版)
环境工程
1990 北京:中国环境科学出版社
论人、机、环境系统工程(1988 PDF版)
论人、机、环境系统工程
1988 北京:人民军医出版社
新型计算机工作站编程环境(1995 PDF版)
新型计算机工作站编程环境
1995 天津:南开大学出版社
微型机编程技巧与实用程序  上(1993 PDF版)
微型机编程技巧与实用程序 上
1993 北京:科学出版社
微型机编程技巧与实用程序  下(1993 PDF版)
微型机编程技巧与实用程序 下
1993 北京:科学出版社