_asm{ int 3 }是什么意思?

nikeyes 2008-04-15 11:10:46
#if _DEBUG
#define Breakpoint _asm{ int 3 }
#else
#define Breakpoint
#endif

在这里_asm{ int 3 }是什么意思?


随便说一下是否存在_asm{ int 2 };_asm{ int 1 };或者_asm{ XXX };
如果内容过多的话,回复相关内容的网址也好:)

thx~~
...全文
1762 10 打赏 收藏 举报
写回复
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenliang520 2011-04-19
  • 打赏
  • 举报
回复
_asm是插入一个汇编指令 指令就是中断3号类型
薛定谔之死猫 2008-04-15
  • 打赏
  • 举报
回复
内联宏汇编,int表示触发软中断,3是中断号,这个依赖于具体的操作系统
baihacker 2008-04-15
  • 打赏
  • 举报
回复
8、直接系统服务(Direct System Service)
INT 00H —“0”作除数
INT 01H —单步中断
INT 02H —非屏蔽中断(NMI)
INT 03H —断点中断
INT 04H —算术溢出错误
INT 05H —打印屏幕和BOUND越界
INT 06H —非法指令错误
INT 07H —处理器扩展无效
INT 08H —时钟中断
INT 09H —键盘输入
INT 0BH —通信口(COM2:)
INT 0CH —通信口(COM1:)
INT 0EH —磁盘驱动器输入/输出
INT 11H —读取设备配置
INT 12H —读取常规内存大小(返回值AX为内存容量,以K为单位)
INT 18H —ROM BASIC
INT 19H —重启动系统
INT 1BH —CTRL+BREAK处理程序
INT 1CH —用户时钟服务
INT 1DH —指向显示器参数表指针
INT 1EH —指向磁盘驱动器参数表指针
INT 1FH —指向图形字符模式表指针
redleaves 2008-04-15
  • 打赏
  • 举报
回复
int 3是汇编指令,断点.
asm是C++的关键字,_asm则是编译器扩展的关键字,表示在此处插入汇编指令.
healer_kx 2008-04-15
  • 打赏
  • 举报
回复
int 3 相当于 DebugBreak, 机器码就是CC
baihacker 2008-04-15
  • 打赏
  • 举报
回复
BIOS中断:
1、显示服务(Video Service——INT 10H)
00H —设置显示器模式0CH —写图形象素
01H —设置光标形状0DH —读图形象素
02H —设置光标位置0EH —在Teletype模式下显示字符
03H —读取光标信息0FH —读取显示器模式
04H —读取光笔位置10H —颜色
05H —设置显示页11H —字体
06H、07H —初始化或滚屏12H —显示器的配置
08H —读光标处的字符及其属性13H —在Teletype模式下显示字符串
09H —在光标处按指定属性显示字符1AH —读取/设置显示组合编码
0AH —在当前光标处显示字符1BH —读取功能/状态信息
0BH —设置调色板、背景色或边框1CH —保存/恢复显示器状态
mLee79 2008-04-15
  • 打赏
  • 举报
回复
_asm 里的是汇编指令...

int 3 是断点
int 1 是单步
healer_kx 2008-04-15
  • 打赏
  • 举报
回复
zhong duan
z_kris 2008-04-15
  • 打赏
  • 举报
回复
不懂汇编……
学习
baihacker 2008-04-15
  • 打赏
  • 举报
回复
int 3是中断...
发帖
C++ 语言

6.3w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
帖子事件
创建了帖子
2008-04-15 11:10
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下