例如,当您键入时,哪个库告诉计算机屏幕显示相应的 ascii 字符并相应地移动光标?
想象一下像运行 DOS 或 Basic 的老式计算机(没有 GUI)之类的东西……什么/哪个库负责 UI?
指向源代码的链接对于理解所述库的工作方式非常有用。
例如,当您键入时,哪个库告诉计算机屏幕显示相应的 ascii 字符并相应地移动光标?
想象一下像运行 DOS 或 Basic 的老式计算机(没有 GUI)之类的东西……什么/哪个库负责 UI?
指向源代码的链接对于理解所述库的工作方式非常有用。
您发布的照片是在模式 7 下运行的 BBC Micro。这是大多数规则的例外。模式 7 是一种低内存模式,其中没有像素,只有 256 个文本字符。在 RAM 中保留了 1K 的内存,以包含当时屏幕上显示的内容。电路板上的特殊芯片称为视频 ULA(未提交逻辑阵列)读取该内存的内容并将其编码到输出。ULA 是 ROM,程序员无法更改。
ZX81 以类似的方式工作:256 个可能的文本字符并且没有像素。然而,ZX81 的专用芯片较少,主 CPU 完成了大部分工作。
更常见的设置是每个像素都由内存中的多个位表示(通常每个像素需要多于一位,因为必须指示颜色)。例如模式 1-6 中的 BBC;橡子电子;光谱; C64; 还有许多其他人。当用户在屏幕上放置文本时,计算机 ROM 会将其转换为正确的像素。图形通常可以直接写入 RAM,或通过 BASIC“绘制”。再一次,专用的 ROM 芯片和电路将把这个内存渲染到输出。这种方法需要更多的内存来显示。
每台 8 位计算机都有自己的方式来表示 RAM 中的显示。您需要获取您正在尝试编程的机器的手册(在互联网上很容易找到更知名的 Micros)。
如果您想查看内部结构,许多模拟器都是开源的。例如:https ://github.com/stardot/beebem
如果您有兴趣查看终端的内部结构以更好地了解它的工作原理和呈现输入/输出,Bash 是完全开源的。您可以在此处下载其最新的源代码。