在x64汇编中编程独立的64位处理器

时间:2013-07-27 15:47:20

标签: assembly x86 64-bit

我正在学习x64和x86架构和汇编语言命令,但我想知道我是如何实际将我创建的程序刻录到独立处理器上的。和avrs一样,mcu是独立的,你买一个程序员,你几乎可以通过将lcds和gsm模块连接到输入和输出引脚来创建自己的手机。与avr你将程序员连接到你的计算机USB端口然后一旦程序被烧毁,mcu运行而不连接到计算机和屏幕。我的问题是我如何在计算机外编程x64位处理器,以便我可以将自己的lcds或电子模块连接到它。 PLease帮助我,因为我读过的一切都是在实际的计算机上使用x64位汇编。也有像x64分线板。

3 个答案:

答案 0 :(得分:1)

您使用嵌入式CPU的经历让您误入歧途。你想做的事情是行不通的。

  1. x86 CPU在“分线板”中不可用。他们需要运行的硬件支持太多了。你最接近的是标准的电脑主板。

  2. 与您可能使用的嵌入式CPU不同,x86 CPU没有板载闪存 - 它们通常从板载闪存芯片(BIOS芯片)启动,而后者依次加载程序(OS)硬盘或其他存储设备。 BIOS是特定于系统的,最好被认为是非用户可修改的。

  3. x86系统通常没有很多易于使用的I / O.大多数可用的总线往往采用难以使用的形式,如PCIe或陌生的东西。

  4. 如果要为x86开发,请为计算机开发,而不是为独立的x86系统(实际上并不存在)进行开发。如果您想为嵌入式系统开发,请选择其他内容。

答案 1 :(得分:0)

您需要从英特尔获得处理器的特定文档,但基本思路是芯片以16位实模式启动并开始从魔术地址执行代码。通常,您会以某种方式将某种EEPROM器件连接到处理器,以将代码放在该魔术地址。

您编写并放入该ROM的16位实模式汇编代码可以根据需要将处理器模式更改为32位和64位模式。你也需要在整个过程中进行RAM初始化。从我在英特尔机器的启动ROM上工作时,我似乎记得英特尔更喜欢保密内存初始化代码。也许您找到的文档可以帮助您完成所有这些工作,或者您需要与英特尔的销售/应用工程师交谈才能开始工作。

答案 2 :(得分:0)

x86_64汇编并不容易。你可以试试MenuetOS,它是一个完全用汇编编写的超轻型操作系统