虽然我理解模拟和仿真的含义一般,但我几乎总是对它们感到困惑.假设我创建了一个模仿现有硬件/软件的软件,我该怎么称呼它?模拟器还是模拟器?
任何人都能解释编程方面的差异吗?
额外奖励:这两个术语的英语差异是什么?(对不起,我不是母语人士:))
可能重复的模拟器如何工作以及它们是如何编写的?
我想编写一个模拟器(可能是NES或C64,我还没有决定),我知道有很多这样的人可能会问为什么有人想从头做一个,但我想要包含一些特定的特性在它,也为了自己建立它.
我想阅读一个已经构建了一个并且可以传输经验的人的指南,它不必是特定于平台的(如果不是,那就更好),因为我知道如何编程,我不知道如何模仿.
我一直在阅读有关人们为Wii构建模拟器的一些阅读,看来它只不过是一个强化的GameCube或Nintendo64,那么是什么让这些系统的构建模拟器变得如此困难?
稍微注意一下,这些系统的硬件出乎意料地低:
Wii:
729MHz PPC CPU
88MB内存
243MHz GPU
N64:
93.75MHz CPU(64位)
4MB内存
是否有可能从.smc文件中翻录游戏资源?特别是艺术,音乐,精灵等.模拟器如何复制它模拟的系统?
人们如何对Wii等游戏机进行逆向工程,为其游戏可执行文件创建模拟器?
可能重复:
模拟器如何工作以及它们是如何编写的?
我想尝试编写一个基本的gameboy模拟器,甚至是NES.我知道C的基础知识,而且我相当擅长Java,所以我知道编程的必要基础知识.但我不知道的是人们如何将所有数据处理成C程序并从中创建模拟器.我知道我应该从源头学习,但是很难看到一堆代码而不知道它们为什么存在以及它们应该做什么.如果我想学习如何编写这样的模拟器,我应该从哪里开始?
我搜索过互联网,但我发现不清楚的教程包含太多错误,我自己也没弄清楚.我该在哪里开始?
我之前曾问过一个类似的问题,关于如何编写模拟器,当我看到答案并查找一些开源游戏模拟器时,我发现除了对"低级"语言的中间理解之外,还有更多的需要. (即C).我真正想知道的是,我需要了解HARDWARE才能编程这样的模拟器.我正在接近Java的"相当不错",但这对我没什么帮助.我已经开始学习C了,我现在已经走了很长一段路,但我很想知道我必须要在硬件上学习什么才能编写这样的控制台模拟器.
我问这个问题的原因是我一直在互联网上搜索关于模拟的书籍和来源,每当我遇到一个模拟器教程时,它总是喜欢"你需要对C的基本理解能够跟随本教程"当我尝试遵循它时,我不能,因为我不知道到底是怎么编程的.我对硬件一无所知.(我的父亲努力将他的显示器连接到他的电脑上可能更了解它)
所以我的问题是,我需要学习什么(微处理器,内存等?)并且有没有任何好的资源可以教我这些东西,而不必为了它或其他东西上大学(已经做软件工程) )?
如果这不是一个真正的问题,或者不够清楚,或者类似的话,我道歉.我对这个问题非常感兴趣.