Corewar项目中C语言的恩库斯部分解析

需积分: 9 0 下载量 57 浏览量 更新于2024-11-15 收藏 126KB ZIP 举报
资源摘要信息:"Corewar:C,恩库斯" ### 知识点详解: #### Corewar简介 Corewar是一个经典的计算机科学思想实验,它模拟了一种虚拟计算机中的程序竞赛。在这种计算机上,每个程序都试图通过修改其他程序来“杀死”它们,从而成为唯一的生存者。这个概念是由Marvin Minsky在1960年代提出,并且在1984年被Daleks' creator开发成一个游戏。 #### C,恩库斯(C Enki) C Enki 是一个专门用于编写Corewar程序的语言,它直接与机器代码相关联。在描述中提到的VM部分,提到了几个关键的控制选项,它们是通过命令行参数进行操作的: - NBR_CYCLE:这个选项指定了多少个周期之后将内存转储到标准输出(STDOUT)。内存转储是一个用于调试的重要工具,可以让程序员看到程序执行某个时间点的内存状态。 - 设置玩家编号:这可能是通过命令行选项-n后跟一个数字来为玩家或程序分配编号。 - 在NCurses -g上执行Draw操作:NCurses是一个用于创建文本用户界面的库,这个选项表示在使用图形模式的NCurses环境中执行绘图操作。这通常用于可视化Corewar程序的运行。 - 控制游戏速度:在Ncurse节目上使用键盘的'+'和'-'键来降低和加快游戏速度,便于玩家观察程序的行为。 #### asm部分 asm部分通常指的是汇编语言部分,这在Corewar的上下文中表示汇编语言编程。汇编语言是机器语言的一种符号表示法,比机器语言更易于人类理解和编写。 - 检查泄漏选项-l:这个选项可能是用来检测程序中的内存泄漏问题。 - 详细模式选项-v:详细模式通常提供了更多的信息输出,有助于更深入地理解程序的运行情况。 #### Jaquier Vincent、Deage Felix、Circiu Stefan-ciprian、Moioux Jean-Jacques 这些名字后面跟着的@ 42 Born2code 表明他们可能是42学校的Born2code项目的成员,这个项目可能是一个以教育为目的的编程活动,旨在培养学生的编程技能。 #### Corewar-master 压缩包文件 这个文件名称暗示了一个包含所有Corewar相关文件的压缩包,其中可能包括C语言版本的Corewar虚拟机、汇编器、编译器,以及一些样例程序和文档。这个包可能用于教学、学习或用于比赛和实验。"Master"可能表明这是一个较为全面或高级版本的集合。 ### 总结 以上就是从给定文件信息中提取的知识点。Corewar项目不仅是一个游戏,它还是一个深入理解计算机内存、处理器架构和编译原理的有用工具。C Enki作为一种特殊的编程语言,以及相关的汇编语言概念,在Corewar项目中扮演着核心角色。通过这些工具和语言,参与者可以学习和实践低级编程,增强对计算机程序如何在底层硬件上工作的理解。
2021-03-05 上传