DUEL: A SUCCESSFUL DEBUG IN DOS MODE(T10-2.ASM)
来源:互联网 发布:淘宝店铺小号怎么登了 编辑:程序博客网 时间:2024/04/30 13:19
调试程序:杨季文 《80X86汇编语言程序设计教程》例程T10-2.asm
平台:win xp操作系统/bochs 2.6.8/DOS 7.1中文版启动盘/winImage 9.00
构建保护模式下的汇编编译及调试环境着实费了一番功夫.
---题记
一、代码
二、说明
1. offset伪指令依赖于编译环境
16位环境下,采用段:偏移的分段方式管理内存,offset返回dw(单字)段内偏移值;而32位下,offset返回内存绝对地址,即dd(双字)。处理方式为将源代码中offset语句从32位段移至16位段(可用NOP标记)。
2. 编译环境的配置
Microsoft Macro Assembler Version 9.00.21022.08
Microsoft Segmented Executable Linker Version 5.60.339
汇编程序严格依赖编译环境,编译环境是程序可重复性的保证。ml.exe从VS2008/VC/bin 中提取,link.exe取自masm 6.0. masm 6.0 之前的版本不支持32位汇编(如不能准确编译lgdt操作码),其后的版本中直到masm 9.0 才对保护模式汇编稳定支持。
参考 博文 《如何编写引导程序 Hello World》
3. 调试环境的配置
参考 博文《用bochs调试保护模式程序》
三、效果截图
□
0 0
- DUEL: A SUCCESSFUL DEBUG IN DOS MODE(T10-2.ASM)
- A. Wizards' Duel
- How to Enable and Run a Payables Concurrent Program in Debug Mode
- Turn off debug mode in vmware workstation
- Starting Jetty in Debug Mode With Gradle
- How to use ASMCA in silent mode to configure ASM for a stand-alone server [ID 1068788.1]
- CodeForces-591A Wizards' Duel
- Codeforces 591A Wizards' Duel
- Codeforces 591A Wizards' Duel
- codeforces 591A Wizards' Duel
- DBCA in Silent mode with ASM [ID 744237.1]
- voting disk in asm diskgroup at external mode
- How add debug information in the VC++ Win32 Release mode
- How add debug information in the VC++ Win32 Release mode
- Enable file editing in Visual Studio's debug mode
- 大水题--CodeForces - 591A Wizards' Duel
- dos&debug
- Guide for PhD students (and post-docs) aiming for a successful career in science
- Talk the Talk
- android跨进程通讯一:android中跨进程通讯的4种方式
- 常量和变量
- data argument not used by format string
- android res values出错的解决办法
- DUEL: A SUCCESSFUL DEBUG IN DOS MODE(T10-2.ASM)
- Git 学习笔记
- 改善Java文档的理由、建议和技巧
- github ssh连接
- 在java项目中如何利用Dom4j解析XML文件获取数据
- 归并排序
- java:Iterator和ListIterator
- poj 2195 bfs+有流量限制的最小费用流
- mac下如何打出顿号