查看“FreeBASIC”的源代码
←
FreeBASIC
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
FreeBASIC是现代BASIC语言变体的名称,以及相应的编译器名称。 传统Basic无法进行本机操作系统开发,而Freebasic具有许多对操作系统开发有用的功能。 ==概述== 除了与QuickBasic基本兼容外,它还提供了以下有用的功能: * 无符号数据类型 * 内联汇编 * 指针 * 回调 * 一个可移植的运行时。 最大的缺点是,大多数特定于Basic的指令需要运行时,而在独立的环境中不能轻松使用。 结果是,在包含运行时支持之前,无法使用几个典型的基本构造,这使得开发非常棘手。 ==用法== FreeBASIC的命令行语法类似于[[GCC]]: fbc -c -o kernel.o kernel.bas 要链接输出可以用: ld -T script.ld -o kernel.bin kernel.o 为了开始运行,有一个[[FreeBasic Bare Bones]]教程,该教程以一个工作正常的“Hello world”内核结束。 == 运行时库 == 在独立环境中,运行时不可用。程序员应注意不要使用以下任何一项: * 字符串 * 动态数组 (仅允许本地固定大小的数组) * 任何形式的全局值。所有信息都必须在参数中传递。 * 所有非原语内置函数,即任何比+-*/和逻辑运算符更复杂的函数。 * IO功能,包括端口输出和输入,peek和poke。 你需要提供一个运行时init来允许使用全局变量,还需要一个malloc()来让字符串和数组工作 (其余依赖项是跨平台的ctype+stdlib函数,这不会造成太大问题)。 如果你已经到了坐下来考虑一下,用C写一个内核的程度,用FreeBASIC写同样的东西就差不多了。 当然,这里有巨大的语言差异,FreeBASIC的语法比C更像英语...但要做任何有用的事情,这两种策略都需要一个C运行时和库。 对于FB内核,在成功移植C库之后,可以考虑在上面移植FB运行时。 更重要的是,FB(Free Basic)可以链接到现有的C库,因此移植C库并不痛苦。 ==另见== === 文章 === * [[FreeBasic Bare Bones]] 教程 * 一般可用替代[[Languages|语言]]。 ===外部链接=== * FreeBasic [http://www.freebasic.net/ homepage] * The [http://www.freebasic.net/wiki/wikka.php?wakka=DocToc FreeBasic Manual] * FreeBASIC tutorial: [http://www.ascii-world.com/fb-to-gedit-howto syntax highlighting in gedit] [[de:FreeBASIC]] [[Category:Compilers]] [[Category:Languages]]
返回至“
FreeBASIC
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
变体
已展开
已折叠
查看
阅读
查看源代码
查看历史
更多
已展开
已折叠
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息