发布网友 发布时间:2022-05-24 20:18
共5个回答
热心网友 时间:2023-10-30 13:39
你理解得不对,不同的机器,如果采用的指令集不同,程序绝对不能兼容(连操作系统本身都要修改,更不用说依赖其运行的程序)。我们一般接触的不同性能的CPU,其实指令集是一样的。即使是指令集相同,如果操作系统不同,程序仍然不能兼容。必须在想要兼容的操作系统环境中(仿真环境下也可)重新编译源代码,生成对应操作系统的程序版本才行。热心网友 时间:2023-10-30 13:39
只要指令集兼容就可以运行,这就是兼容机的意思呀。过去的C64那种微机程序不能通用是因为指令集和硬件接口不统一,现在的兼容机不管AMD还是Intel都是X86或X86_64,网卡显卡声卡键盘鼠标都有通用驱动,现在只有苹果还在坚持微机的路子。热心网友 时间:2023-10-30 13:40
简单的话,程序的运行是依靠操作系统的。操作系统能处理硬件的差异;给程序提供统一的运行平台。换言之,你指的程序可以称之为高级程序,如果是汇编等硬件依赖性比较强的程序,是不能相互之间移植的……这样说,你能明白吗?热心网友 时间:2023-10-30 13:40
因为编译器已经帮你做好解释了。例如c#中是IL
热心网友 时间:2023-10-30 13:41
就像一辆车跑高速路和普通公路一样,好路跑快些,烂路跑慢些。发动机还是原来的。你满意吗。