我正在做一个比较不同编程语言的课程项目。是否可以在Forth语言中使用BIOS中断?我似乎无法在此找到任何此类信息。如果是这样的话会是什么样的?
答案 0 :(得分:3)
我认为你错误地认为,这是一个无所不包的" Forth"在那里。没有。有许多Forth实现。那些运行"裸骨" (没有操作系统)或在DOS下当然可以哄骗访问BIOS API。那些在Windows或Linux等32或64位操作系统下运行的系统不太可能提供这样的功能,因为操作系统很难运行BIOS API。
在Windows下运行时,使用16位BIOS API (而不是在不运行BIOS代码的情况下读取数据)非常麻烦。现代BIOS还提供32位API,但在所有情况下,您仅限于可以访问的硬件(无) - 这由操作系统强制执行,而不是由BIOS代码强制执行。
一般来说,BIOS API很麻烦,当您拥有一个完整的操作系统时,没有必要使用它们。
现在,如果您不关心BIOS是否访问真实硬件或模拟硬件,您当然可以使用Forth访问类似DOSBox的内容并在模拟硬件上运行真正的BIOS。哎呀,DOSBox提供了自己的BIOS实现:)