我在计算机和微控制器的背景下问这个问题。我需要一个简洁的答案。这几个词好像混在一起了,不知道是不是可以互换,但感觉不是。谢谢。在我的研究中我还没有发现它们之间的区别,因此我在这里发布了这个问题。
2 回答
不确定这对您来说是否足够简洁,但我的理解是:
模拟器 - 模拟硬件。
模拟器 - 模拟软件。
看看这篇文章,就该主题进行体面的讨论。
这是该网页的引述:
仿真与仿真
“模拟器”这个词是 1963 年在 IBM [12] 开发 NPL (IBM 360) 产品线期间使用“软件、微码和硬件的新组合”创造的。 [13] 他们发现,使用微代码硬件而不是软件模拟来执行为早期 IBM 计算机编写的程序,可以大大加快模拟速度。1957 年早些时候,IBM 为 IBM 709 计算机提供了一个解释器程序(软件)来执行为 IBM 704 编写的遗留程序,以便在 IBM 709 和后来的 IBM 7090 上运行[14] 1963 年,当微码首次用于加速这个模拟过程,IBM 工程师创造了术语“模拟器”来描述这个概念。
最近在软件的上下文中使用“仿真”这个词变得很普遍。然而,在 1980 年之前,“仿真”仅指带有硬件或微码辅助的仿真,而“仿真”指的是纯软件仿真。 [15] 例如,专门为运行为另一种体系结构设计的程序而构建的计算机就是模拟器。相反,模拟器可以是在 PC 上运行的程序,以便可以在其上模拟旧的 Atari 游戏。纯粹主义者继续坚持这种区别,但目前“仿真”一词通常意味着完全模仿执行二进制代码的机器。
仿真是指(可能是微编码的)硬件,尤其是软件,可能是软件逐步通过并处理每个输入,而被仿真的微控制器/处理器将如何处理指令。
模拟尤其是软件,但也许硬件也接受输入并通过不同的过程产生预期的输出。
仿真是对内部操作的极其精确的建模,而仿真更侧重于输入输出黑盒概念。