关于一个编程语言的问题,高手进

hailongqiu 2012-09-26 07:56:17
本人在写 CN语言翻译机,效果是翻译成NASM汇编.
本想在CN语言中加入异常处理的,思前想后,都无法相通。
// setjmp 保存程序运行时的堆栈环境.
// longjmp 恢复先前保存的程序堆栈环境.
虽然知道这两个函数可以实现异常.
但是汇编中,要如何做到,没有过多的寄存器可以利用,
是否必须开辟一块内存专门用于异常呢?
感觉这样的话,异常就需要一个架构的问题,需要好好想想,参考前人的思想。
iret 异常处理,是否能用于这样的情况,可以改变 cs, ip, 状态标志.实现远跳。
还是ret足以。
请高手给予回答
...全文
73 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
火雲邪神 2012-10-04
  • 打赏
  • 举报
回复
CN语言我在google搜也搜不到, 同志們不會搞錯吧
大熊猫侯佩 2012-09-27
  • 打赏
  • 举报
回复
CN语言是类似C语言吗?你可以参考VC中的try…catch块的实现。

在gcc和masm中也有类似的宏。

但如果想实现的比较全面不容易。

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧