Skip to content

搞英语 → 看世界

翻译英文优质信息和名人推特

Menu
  • 首页
  • 作者列表
  • 独立博客
  • 专业媒体
  • 名人推特
  • 邮件列表
  • 关于本站
Menu

将 C 放入 C64 中

Posted on 2024-01-09

较旧的 CPU 和一些相当现代的微控制器无法轻松支持 C 编译器。其中包括 1802、一些 8 位 PIC 以及 Commodore 64 核心的 6502。这并不是说您不能为其中任何一个创建 C 编译器,而是说处理奇数字长所需的技巧、缺乏堆栈操作或 C 不适合的任何其他原因往往会使编译后的代码变得臃肿并且可能更慢。 [博士。凡人袋熊]采取了不同的方法。 oscar64 编译器采用 C 源代码并将其编译为虚拟机代码或本机机器代码(在性能可能很重要的情况下)。

事实证明,使用本机代码的损失并不像预测的那么严重,至少在某些情况下是这样。然而,在许多常见情况下,使用解释器的性能损失可能会很大。 6502 的堆栈很小,很难寻址,并且索引到用户维护的堆栈的速度很慢。字长问题还会产生大量代码,因为您必须将 16 位操作分解为多个 8 位操作。该编译器的目标是兼容 C99,包括浮点、递归、数组的多维以及结构指针。

还有一些事情需要敲定。链接器不支持外部库,并且浮点代码不理解 NaN。另一方面,许多 C++ 功能都可用,例如命名空间、引用类型、模板等等。该编译器可以针对从 C128 到 PET 的多种 Commodore 机器。它还可以与一些任天堂和雅达利系统配合使用,并可以创建各种卡带格式。

如果您正在为任何类型的 6502 编写代码,那么它可能值得一看。为 6502 编译 C 并不是一件小事,但是,它的目标是PowerPoint 。没有 C64 吗? 建造一个.

图片:[MOS6502], CC-BY-SA 3.0

原文: https://hackaday.com/2024/01/08/putting-the-c-in-c64/

本站文章系自动翻译,站长会周期检查,如果有不当内容,请点此留言,非常感谢。
  • Abhinav
  • Abigail Pain
  • Adam Fortuna
  • Alberto Gallego
  • Alex Wlchan
  • Answer.AI
  • Arne Bahlo
  • Ben Carlson
  • Ben Kuhn
  • Bert Hubert
  • Bits about Money
  • Brian Krebs
  • ByteByteGo
  • Chip Huyen
  • Chips and Cheese
  • Christopher Butler
  • Colin Percival
  • Cool Infographics
  • Dan Sinker
  • David Walsh
  • Dmitry Dolzhenko
  • Dustin Curtis
  • eighty twenty
  • Elad Gil
  • Ellie Huxtable
  • Ethan Marcotte
  • Exponential View
  • FAIL Blog
  • Founder Weekly
  • Geoffrey Huntley
  • Geoffrey Litt
  • Greg Mankiw
  • Henrique Dias
  • Hypercritical
  • IEEE Spectrum
  • Investment Talk
  • Jaz
  • Jeff Geerling
  • Jonas Hietala
  • Josh Comeau
  • Lenny Rachitsky
  • Liz Danzico
  • Lou Plummer
  • Luke Wroblewski
  • Matt Baer
  • Matt Stoller
  • Matthias Endler
  • Mert Bulan
  • Mostly metrics
  • News Letter
  • NextDraft
  • Non_Interactive
  • Not Boring
  • One Useful Thing
  • Phil Eaton
  • Product Market Fit
  • Readwise
  • ReedyBear
  • Robert Heaton
  • Rohit Patel
  • Ruben Schade
  • Sage Economics
  • Sam Altman
  • Sam Rose
  • selfh.st
  • Shtetl-Optimized
  • Simon schreibt
  • Slashdot
  • Small Good Things
  • Taylor Troesh
  • Telegram Blog
  • The Macro Compass
  • The Pomp Letter
  • thesephist
  • Thinking Deep & Wide
  • Tim Kellogg
  • Understanding AI
  • Wes Kao
  • 英文媒体
  • 英文推特
  • 英文独立博客
©2025 搞英语 → 看世界 | Design: Newspaperly WordPress Theme