leesoft 发表于 2007-8-22 18:57:05

俺来了
谁知道brk这个指令的功能?

leesoft 发表于 2007-8-22 18:59:36

看来汇编区确实冷啊

Loading 发表于 2007-8-22 19:07:16

leesoft还真牛啊
一下就吧偶考倒了
那就让偶教教你吧
brk应该是break,也就是中断吧

哈哈~~~~~~~~~~~~

leesoft 发表于 2007-8-22 19:09:45

俺是说brk的功能
brk发生时,cpu都做了什么事情,比如:改变了哪些标志位,往栈里压了什么数值?

leesoft 发表于 2007-8-22 19:12:23

还有,arm都有哪些中断?

leesoft 发表于 2007-8-22 19:12:55

不会就google一下吧
^_^

Loading 发表于 2007-8-22 19:15:02

...


应该是压入了执行中断的地址和标志积存器状态吧

leesoft 发表于 2007-8-22 19:17:03

压的地址是什么?
a.brk指令的地址
b.brk指令的地址+1
b.brk指令的地址+2
c.brk指令的地址+3

Loading 发表于 2007-8-22 19:19:56

ARM啊
那偶可不懂了,我只是个菜鸟,什么LDA STA 啊会一点
多的就不会了
如果lee没事的话在汇编区谢谢教程,肯定火
汇编还是有点用的
LAVA的编译器不也是汇编写的么

leesoft 发表于 2007-8-22 19:21:30

LavaX的编译器是vc写的
:-)

Loading 发表于 2007-8-22 19:21:41

选b
对了
lee给偶加分

Loading 发表于 2007-8-22 19:22:19



‘写错了,是解释器

Loading 发表于 2007-8-22 19:23:24

对哦


google是最好的网络教师

不过我百度多点

leesoft 发表于 2007-8-22 19:23:45

引用第11楼Loading于2007-08-22 19:21发表的“”:
选b
对了
lee给偶加分


俺写成两个b了?
到底哪个?

Loading 发表于 2007-8-22 19:25:18

b.brk指令的地址+1

leesoft 发表于 2007-8-22 19:27:58


是brk指令的地址+2
brk虽然是单字节指令,但是cpu会跳过brk后的一个字节,而把brk指令的地址+2入栈

Loading 发表于 2007-8-22 19:31:58

以前记得谁说过执行RTI指令时会出栈中断执行地址+1和寄存器状态的啊

我没仔细想过,不过lee说的在理,偶信你

学到东西了,偶给你加分

Loading 发表于 2007-8-22 19:33:34

跟lee说话一不小心就会学到东西
真好玩

Loading 发表于 2007-8-22 19:45:58

看来lee还是挺谨慎的,这样戴高帽都没用

肯定是去水区了

leesoft 发表于 2007-8-22 19:51:12

^_^
那俺再说一个
brk虽然是单字节指令,但是cpu会跳过brk后的一个字节,而把brk指令的地址+2入栈
那么rti返回时地址数不是就是brk指令的地址+2呢?
按理说应该是的。不过,ggv某人耍了点小聪明,在brk中断里,把栈里的返回地址+1,这样rti返回到brk指令的地址+3处。这就是为什么某些人以为brk后面跟双字节的原因。
页: [1] 2
查看完整版本: 汇编区不是一般的冷啊.......