Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
克伦肖';s";让';让我们构建一个编译器";:转录到C和x86汇编程序?_C_Assembly_Compiler Construction_X86_Pascal - Fatal编程技术网

克伦肖';s";让';让我们构建一个编译器";:转录到C和x86汇编程序?

克伦肖';s";让';让我们构建一个编译器";:转录到C和x86汇编程序?,c,assembly,compiler-construction,x86,pascal,C,Assembly,Compiler Construction,X86,Pascal,我正在学习Jack Crenshaw的优秀编译器编程教程“让我们构建一个编译器”,但遇到了两个障碍。首先,代码是用Pascal编写的,这是一种很棒的语言,我在20世纪80年代中期对它有过短暂的接触,对它既尊敬又喜爱,但从那以后我就再也没有接触过它。我目前主要用C语言编程 另一个障碍是生成的汇编程序用于摩托罗拉68000系列处理器。虽然我可以为它找到一个翻译程序,但如果我能生成英特尔x86汇编程序(英特尔或AT&T风格),那就更好了 我可以在Linux、MacOSX或Windows7上完成这些代码

我正在学习Jack Crenshaw的优秀编译器编程教程“让我们构建一个编译器”,但遇到了两个障碍。首先,代码是用Pascal编写的,这是一种很棒的语言,我在20世纪80年代中期对它有过短暂的接触,对它既尊敬又喜爱,但从那以后我就再也没有接触过它。我目前主要用C语言编程

另一个障碍是生成的汇编程序用于摩托罗拉68000系列处理器。虽然我可以为它找到一个翻译程序,但如果我能生成英特尔x86汇编程序(英特尔或AT&T风格),那就更好了

我可以在Linux、MacOSX或Windows7上完成这些代码,如果这能让事情变得更简单的话。我可以访问所有命名的操作系统

我觉得自己没有足够的资格做笔录。有人已经解决了这个问题吗,或者你还有其他建议吗


欢迎任何想法、反馈或建议。

将目标对准JVM而不是本地处理器可能更容易。至于将Pascal翻译成C。。。这真的不应该是一个很大的障碍。

你可以在a上运行生成的代码-该页面上的一些条目是开源的。

我编写了一个杰克代码的C/x86转换。我会在他发布的时候阅读每一篇文章,转换代码,然后将其发布到Compuserve。我不知道我是否还有那些东西。如果您希望我搜索我的档案,请直接与我联系(我的电子邮件地址在我的个人资料中)。我没有做出任何承诺,因为这是20多年前的事了。拖拽复杂的框架会适得其反。本教程的目标是提供见解,而不是“简单”。