首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我正在用NASM16位编写我自己的基本操作系统,它一直打印一个我没有告诉它的字符串

您好!感谢您提供的问答内容。下面是关于您正在使用NASM 16位编写自己的基本操作系统,它一直打印一个您没有告诉它的字符串的答案:

  1. 基本操作系统:基本操作系统是计算机系统中最底层的软件,负责管理和控制计算机硬件资源,提供用户与计算机硬件之间的接口。它包括操作系统内核和一系列系统工具,用于管理进程、内存、文件系统、设备驱动程序等。
  2. NASM:NASM(Netwide Assembler)是一种汇编语言编译器,用于将汇编语言代码转换为机器码。它支持多种处理器架构,包括x86、x86-64和ARM等。NASM具有高度可移植性和灵活性,适用于编写操作系统、设备驱动程序和嵌入式系统等。
  3. 16位编程:16位编程是指使用16位寻址模式和16位寄存器的编程方式。在早期的计算机系统中,16位编程是主流,如Intel 8086处理器。16位编程相对于32位或64位编程来说,具有一些限制,但在一些特定的场景下仍然有其应用价值。
  4. 字符串打印:字符串打印是指将一个字符串输出到屏幕或其他输出设备上。在基本操作系统中,字符串打印是一个常见的操作,用于显示用户界面、错误信息等。通过调用相应的系统调用或使用底层的I/O指令,可以将字符串打印到屏幕上。

在开发基本操作系统时,您可以使用NASM编写汇编语言代码,通过调用适当的系统调用或使用底层的I/O指令来实现字符串打印功能。具体步骤如下:

  1. 编写汇编代码:使用NASM编写汇编代码,包括初始化操作系统环境、设置中断向量表、处理中断、实现字符串打印等功能。您可以使用NASM提供的指令集和宏来简化编程过程。
  2. 构建引导扇区:将汇编代码编译成二进制文件,并将其放置在引导扇区中。引导扇区是操作系统启动时加载的第一个扇区,其中包含了引导程序和操作系统的基本代码。
  3. 虚拟机或实体机测试:将引导扇区写入虚拟机或实体机的引导区域,并启动计算机。通过观察屏幕输出,验证字符串打印功能是否正常工作。
  4. 迭代和调试:根据需要,逐步完善和调试操作系统的其他功能,如键盘输入、文件系统、内存管理等。通过不断迭代和调试,逐渐完善您的基本操作系统。

在腾讯云的产品中,以下是一些与您的问答内容相关的产品和链接地址:

  1. 云服务器(ECS):腾讯云的云服务器产品,提供弹性计算能力,可用于部署和运行您的基本操作系统。链接地址:https://cloud.tencent.com/product/cvm
  2. 云存储(COS):腾讯云的对象存储服务,可用于存储和管理您的操作系统镜像、引导扇区等文件。链接地址:https://cloud.tencent.com/product/cos

请注意,以上仅是示例产品,您可以根据实际需求选择适合的腾讯云产品。同时,为了保证您的基本操作系统的稳定性和安全性,建议您在开发过程中遵循最佳实践,如代码审查、安全漏洞修复等。

相关搜索:我正在尝试编写一个程序来显示Dolar值,但是我不能让它打印出我想要的信息我没有在rdlc报表上设置任何边框,但打印后它会显示一个红色的边框。任何边框都能告诉我如何删除它吗?我有一个函数的问题,它没有返回任何东西,当我调用它时,当我试图调用它时,它会告诉我没有定义变量我试图在我的图形用户界面中放置一个图像图标,但是当我运行代码时它并没有出现。有人能告诉我怎么修吗?我试图打开一个csv文件,但它没有加载csv文件,而是打印了它的html文档。我正在尝试编写一个不一致的机器人,它显示了我的“我的世界”服务器的状态,但是机器人没有响应命令,甚至没有错误在C中创建一个字符串时,我试图将其内容复制到该字符串的文件,在我实际告诉它之前就这样做了While循环第三次循环,尽管在我眼里它的条件没有得到满足,因此打印了一个空字符串我写了一个非常基本的二次方程代码,它并没有像我想的那样返回'None‘,to.it只是打印了两次正确的答案有没有人可以告诉我如何获取一个播放器对象,并在一个二维的Tile对象数组中移动它?我期望一个函数返回一个字符串,但似乎返回未定义的。它没有通过Mocha测试从excel文件创建一个列表,该文件是列的一部分。如果没有任何值的'text:‘前缀,我如何打印它?有没有一种方法可以写一个程序,让它持续使用越来越多的内存?我想为此编写一个简单的C程序
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

JavaScript 程序员可以从C ++中学到什么

你可以在任何 Web 浏览器上运行它,并且由于具有原型继承和动态类型等功能,学习者在编写和执行第一段代码之前克服的障碍更少。 但是 JavaScript 让初学者更容易上手的因素也让它难以被掌握。...基本的 int 类型的取值范围是系统体系建议的自然范围。在 64 位操作系统上通常是 32 位。...我第一次遇到这个问题时正在用 PHP,在 5.2 版本之前没有内置的方式能够记录超过 2038 年的日期。...(JavaScript 使用了 64 位系统来处理日期,所以我们 JavaScript 程序员不用担心这个) 2038 问题证明了我们自己管理内存的潜在用处。在需要较小取值范围的地方可以节省内存。...自动垃圾回收是高级语言的一个特征,它有助于释放内存——不需要通过程序员的明确指示就可以告诉它不再需要。

72120

【Linux系统编程】环境变量详解

环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数 如:我们在编写C/C++代码的时候,在链接的时候,从来不知道我们的所链接的动态静态库在哪里...我们学过C语言,对于一个字符指针来说,它指向的内容无非就两种: 指向一个字符(即存储一个字符变量的地址) 指向一个字符串(即存储的是一个字符串的首字符地址) 那在这里我明确的告诉大家它指向的就是一个字符串...其实不用打印我们也能猜出来,我们说了它是环境变量表嘛,所以它里面放的就是一个一个的环境变量以及它们对应的值组成的字符串。...,它说明了环境变量其实本质是一张内存级的表,在用户登录的时候,就会由系统去特定用户形成属于自己的环境变量表。...那下面我们来做一个实验: 我们来尝试写这样一个程序: 就是你调用我这个程序的时候,必须带选项,如果你第一次调用不知道的话,没有带选项,就打印提示;然后根据提示,你带不同的选项,就会打印不同的语句代表完成不同的任务

29310
  • 我这个人不懂什么CPU,于是我用代码模拟出了一个

    甚至可以说,模拟器只不过是一种状态机(state machine),它没有从逻辑门(logic gate)层面描述 CPU。...这绝对是实现中隐藏的痛点之一。从偏移量上看,我选择了较小的字节顺序。但在测试 ALU 时,我就遇到麻烦了。我试图找出为什么出来的数字是错误的。很多很多打印语句都发生在这个上面。...无论如何,我最终编写出了四个程序,其中多数程序使用一些共享代码来绘制字体、获取键盘输入等。虽然与操作系统还有一定的距离,但它确实让我意识到一个简单的操作系统也可能提供一些服务。...在用汇编语言编程的过程中,我基本上放弃了底层的 NAND、AND 和 OR 门。我上升到了上面的抽象层。...循环是什么样的 没有堆栈指针寄存器的机器+堆栈的概念很糟糕 没有中断的机器很糟糕 汇编程序是什么、如何工作 外围设备如何与一个简单的 CPU 通信 简单字体的工作原理和在显示器上显示它们的方法 一个简单的操作系统会是什么样子

    91820

    笨办法学 Python3 第五版(预览)(一)

    把这些任务看作是一种需要解决的谜题。如果遇到困难,你应该观看我展示如何完成所有操作的适用于你的操作系统的视频。我认为学习这个最好的方法是首先自己尝试;然后当遇到困难时,观看视频看我是如何做的。...它为我们打印出这行代码以供查看。 然后它放置一个^(插入符)字符指向问题所在的地方。注意结尾缺少"(双引号)字符了吗? 最后,它会打印出一个“SyntaxError”并告诉我们可能的错误。...时,我是在告诉 Python 执行以下操作: 取出第 1 行定义的 formatter 字符串。 调用它的 format 函数,类似于告诉它执行一个名为 format 的命令行命令。...软件大部分的功能是以下内容: 从一个人那里获取某种输入。 改变它。 打印出一些内容以展示它是如何改变的。 到目前为止,你一直在打印字符串,但还没有能够从一个人那里获取任何输入。...注意,当我运行它时,我给了它first 2nd,这导致它出现了一个关于“需要超过 3 个值来解包”的错误,告诉你没有给足够的参数。 学习练习 尝试给你的脚本提供少于三个参数。看看你会得到什么错误?

    24310

    多么痛的领悟——计算机组成原理第一讲

    先说系统软件吧,我想就算你是个小白,你至少也应该知道你现在用的电脑上装的是windows系统吧,那这个windows系统就是一个系统软件,系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作...知道了系统软件,再说应用软件,它是为了某种特定的用途而被开发的软件,它可以完成各种具体任务,比如游戏、办公、存储数据等等,没有应用程序的计算机,基本上什么功能都没有,值得一提的是,应用程序必须在操作系统的支持下才能运行...”系统等都属于操作系统,我想看到这你应该明白了不少吧,要是还没明白,就再多看几遍,看图理解也行,至少你现在要明白没有安装软件的计算机就是一堆废铜烂铁,应用程序必须再操作系统的支持下才能运行。...在上面我已经详细描述了“软件”,那现在出现了一个问题是人类是如何编写软件的呢?我就开门见山了,软件是由“编程语言”编写而成的。 编程语言的前世今生 ?...那再说计算机,它其实本质上就是电流加一堆硬件,如果没有电流,计算机就像桌子椅子一样,它不是“活”的东西,有了电流,它才能“活”起来。那这电流是怎么让这一堆硬件“活”起来的呢?

    63240

    什么是好的编程语言?

    那些使用 Haskell 的用户声称对此非常满意,但是一位生产用户说,当他们为了自己私人用途编写代码时,他们更喜欢使用 Python。...有一次,当我正努力用 AWK 处理一些文本时,一位同事建议我试试 Perl,书中的第一个例子起到了这个作用,于是我开始了一段和 Perl 的短暂恋情。...有人会创建一台计算机,为它设计一个操作系统,然后语言编译器是可选的附加组件。...现在,你通常会编写多少代码来确定类似的内容?XSLT 几乎没有代码来产生结果,它只是直接写在那里。 我使用 XSLT 的一个「亮点」是我的视角改变了。...在最后一行中,我们从 stdin 读取一系列行,并为每个行创建一个以 new line 结尾的新字符串,其中的内容是解析为数组的原始行,然后将其反转并流式输出。然后打印字符串。

    2.7K20

    好的编程语言具备哪些特性?

    那些使用 Haskell 的用户声称对此非常满意,但是一位生产用户说,当他们为了自己私人用途编写代码时,他们更喜欢使用 Python。...有一次,当我正努力用 AWK 处理一些文本时,一位同事建议我试试 Perl,书中的第一个例子起到了这个作用,于是我开始了一段和 Perl 的短暂恋情。...有人会创建一台计算机,为它设计一个操作系统,然后语言编译器是可选的附加组件。...现在,你通常会编写多少代码来确定类似的内容?XSLT 几乎没有代码来产生结果,它只是直接写在那里。 我使用 XSLT 的一个「亮点」是我的视角改变了。...在最后一行中,我们从 stdin 读取一系列行,并为每个行创建一个以 new line 结尾的新字符串,其中的内容是解析为数组的原始行,然后将其反转并流式输出。然后打印字符串。

    2.1K10

    MIT 6.S081 (BOOK-RISCV-REV1)教材第四章内容 --Trap -- 中

    所以a0是文件描述符2;a1是Shell想要写入字符串的指针;a2是想要写入的字符数。我们还可以通过打印Shell想要写入的字符串内容,来证明断点停在我们认为它应该停在的位置。...我们可以查看SATP寄存器: 这里输出的是物理内存地址,它并没有告诉我们有关page table中的映射关系是什么,page table长什么样。...之后的是u标志位,它表明PTE_u标志位是否被设置,用户代码只能访问u标志位设置了的PTE。 再下一个标志位我也不记得是什么了(注,从4.3可以看出,这个标志位是Global)。...我们可以查看a标志位来判断这条PTE是否被使用过,如果它没有被使用或者最近没有被使用,那么这条PTE对应的page适合用来保存到磁盘中。类似的,d标志位告诉内核,这个page最近被修改过。...即使trampoline page是在用户地址空间的user page table完成的映射,用户代码不能写它,因为这些page对应的PTE并没有设置PTE_u标志位。

    41241

    老规矩 从HelloWorld 开始吧

    安装过程(传送门 : JDK1.8安装与环境变量配置 ) 安装过程网上有很多,我就不浪费篇幅介绍了。关于环境变量是干啥的,可以看看我以前的文章 (传送门:学编程之前 一定要知道这些操作系统知识)。...已经为各位准备好了32位系统和64位系统的JDK和Eclipse免安装版,请务必查询自己系统的位数,下载对应的版本。...hello world 1.编写helloworld的java文件,使用文本文件编写,最后保存为 .java 文件,即后缀为java,像下面这样,保存在任意一个盘都可以。...开发工具的选择 现在有很多IDE可以开发java程序,但是主流的有3个:eclipse,myeclipse,idea。新手入门推荐eclipse,很多公司也在用这个,你可以一直从学习用到公司。...下面也有选项,可以让我们选择其他的JRE运行环境,但是我们使用默认的就行了。有些同学肯定会问,JDK不是开发工具么,为什么没有配置?因为Eclipse 自己带了。

    36220

    计算机基础知识

    大家好,又见面了,我是你们的朋友全栈君。 一、为何要学习计算机基础? 好多人觉得自己有点基础就都想着直接敲代码,觉得基础知识很容易,很简单,就不怎么用心去学。然而,我觉得基础知识很重要。...你要把它当成自己的兴趣,一点一点的去投入它,相信你会是很棒的。    程序用编程语言来写程序,最终开发的结果就是一个软件。就像大家都知道的QQ,腾讯视频,酷狗音乐等一系列软件。...当然,有人会问:为什么要用操作系统呢?当然,很久以前的那些程序员确实是在没有操作环境下,编程语言是操作硬件来编写的。你可能觉得没问题,但是其实问题很严重。如果一直像以前那样会严重影响效率的。...①解释的那样  用户态:用户程序在用户态下运行,仅仅只能执行cpu整个指令集的一个子集,该子集中不包含操作硬件功能的部分,因此,一般情况下,在用户态中有关I/O和内存保护(操作系统占用的内存是受保护的...然后初始有关的表格(如进程表),穿件需要的进程,并在每个终端上启动登录程序或GUI 九、应用程序的启动流程   1.双击快捷方式   2.告诉操作系统一个文件路径   3.操作系统从硬盘读取文件到内存中

    67810

    计算机基础知识

    你要把它当成自己的兴趣,一点一点的去投入它,相信你会是很棒的。     程序用编程语言来写程序,最终开发的结果就是一个软件。就像大家都知道的QQ,腾讯视频,酷狗音乐等一系列软件。...当然,有人会问:为什么要用操作系统呢?当然,很久以前的那些程序员确实是在没有操作环境下,编程语言是操作硬件来编写的。你可能觉得没问题,但是其实问题很严重。如果一直像以前那样会严重影响效率的。...①解释的那样     用户态:用户程序在用户态下运行,仅仅只能执行cpu整个指令集的一个子集,该子集中不包含操作硬件功能的部分,因此,一般情况下,在用户态中有关I/O和内存保护(操作系统占用的内存是受保护的...控制器的功能:通常情况下对设备的控制是非常复杂和具体的,控制器的任务就是为操作系统屏蔽这些复杂而具体的工作,提供给操作系统一个简单而清晰的接口 设备本身:有相对简单的接口且标准的,这样大家都可以为其编写驱动程序了...然后初始有关的表格(如进程表),穿件需要的进程,并在每个终端上启动登录程序或GUI 九、应用程序的启动流程   1.双击快捷方式   2.告诉操作系统一个文件路径   3.操作系统从硬盘读取文件到内存中

    54530

    Go Testing By Example--Russ Cox在GopherCon Australia 2023的演讲

    这个bug在2006年, 在使用64位内存和32位int的C程序中被发现, 该程序对 包含超过10亿个条目的数组进行索引,这种特殊的组合在Go中基本不会发生 (因为在Go中,我们要求64位内存使用64位...myatof64基本上是strconv.ParseFloat64,只不过它处理十进制p格式.让我们可以按照我复制的方式编写测试用例. 最后,如果结果不是我们想要的,会打印错误。...这不仅使编写新测试用例变得非常容易,而且这些带注释的格式扩展了现有的解析器(parsers)和打印机(printers)。 有时从头开始编写自己的解析器和打印机会更有帮助。...然后,它将表重新打印回字符串,将字符串重新插入语法树中,并将语法树重新打印回Go源代码。这只是gofmt的扩展版本,使用与gofmt相同的软件包。我不会向你展示它,但代码并不多。...这个测试在检查页面是否渲染,因此它检查了基本文本和副标题。为了使编写测试变得更容易,根本没有引用:值只是运算符后面的行的其余部分。 这里还有一个测试用例。

    31410

    程序员需要了解的硬核知识之操作系统和应用

    操作系统功能的历史 操作系统其实也是一种软件,任何新事物的出现肯定都有它的历史背景,那么操作系统也不是凭空出现的,肯定有它的历史背景。...例如,通过键盘进行文字输入,显示器进行数据展示等,如果每编写一个新的应用程序都需要相同的处理的话,那真是太浪费时间了。因此,基本的输入输出部分的程序就被追加到了监控程序中。...现在培训机构培养出了一批怎么用的人才,却没有培训出为什么这么做的人才,毕竟为什么不是培训机构教的,而是学校教的,我很相信耗子叔说的话:学习没有速成这回事。言归正题。...不过,要想成为一个全面的程序员,有一点需要清楚的就是,掌握硬件的基本知识,并借助操作系统进行抽象化,可以大大提高编程效率。...最初,为了实现在显示器中显示和在打印机中打印,就必须分别编写各自的程序,而在 Windows 中,可以借助 WYSIWYG 基本上在一个程序中就可以做到显示和打印这两个功能了。

    49920

    程序员大牛是如何编写程序的?在开始编码之前,他们会先在纸上推演程序吗?

    对于这些话,我想说,TOO YOUNG TOO SIMPLE,肯·汤普森可是可以手撸 C 语言和 Unix 操作系统的人,他如果想写一个可以步进的调试器,或者设计一个完善的 TDD(测试驱动开发)工程思想方案...等等,看似这是一个简单的小需求,背后却隐藏着很多需要考虑的边缘情况。它并不简单。 我主要在代码中思考,而不是编码前准备,尤其是前 10 年。...另一个项目运行了大约 5 年,没有出现一个问题,直到服务器退役后我得到了一个 ping,发现它仍然被大约数百名未迁移到新系统的用户使用。...有时在代码审查中,有 40 多条评论也是很常见的,接受自己就好。 小结 这是一位大佬,他分享了自己接近 30 年的编程经验,很诚恳,也很实用。...与其被自己的单元测试打断,在中国开放式的工作环境中,我想他们是不是更介意被没完没了且毫无意义的会议打断呢? 还有钉钉,你一直不回复,可以一直钉你,钉到会回复为止。

    65530

    吾爱破解一道题目,GPT4秒破!

    如果仅仅只是想让程序打印出Success字符串,我们可以一路修改条件跳转指令的标志位来实现,也就是暴力破解,这个我们之前的视频里已经给大家演示过。...然后一不小心,我瞅见了这个字符串旁边还有一个字符串,这里居然有一段提示,告诉我们破解的方法就是凯撒密码!...于是我打开了GPT4.0,把这个字符串给了它,并告诉它,这个字符串可能是凯撒加密的结果,让它给我推导出可能的原始明文。 几秒钟的时间,它还真给我分析出来了。...因为它已经超出了ASCII字符的范围,IDA在分析字符串的时候,把它给漏掉了。而0x80向前移动三位,刚好就是右花括号!真的坑爹啊! 到这里为止,这道题目就算是破解成功了!...我回到WinDbg中,重新启动调试这个程序,这一次输入一个长度为36位的字符串,比如这样一个字符串:xuanyuanzhifengxuanyuanzhifengxuanyu 我们在调用F91FE0的位置打个断点

    21810

    Python 自动化指南(繁琐工作自动化)第二版:零、前言

    21 世纪初,我的大学室友在一家零售电子商店工作。偶尔,商店会收到来自其他商店的数千种产品价格的电子表格。一个由三名员工组成的团队会将电子表格打印在厚厚的一叠纸上,并在他们之间进行分配。...“你知道,如果你有打印输出的原始文件,我可以写一个程序来做,”我的室友告诉他们,当他看到他们坐在地板上,文件散落一地。...程序员不需要懂多少数学 我听到的关于学习编程最常见的焦虑是认为它需要大量的数学知识。实际上,除了基本的算术,大多数编程不需要数学。事实上,擅长编程和擅长解数独谜题并没有什么不同。...你只是给了计算机一个指令,它就做了你告诉它做的事情! 安装第三方模块 一些 Python 代码要求您的程序导入模块。...解释你已经尝试做了什么来解决你的问题。这告诉人们你已经做了一些工作来自己解决问题。 列出你正在使用的 Python 版本。

    1.1K40

    高德纳:讲故事停不下来的计算机科学先驱

    从这些采访中可以瞥见高德纳老爷子的科研理念和人生态度。 您一直都对写作有兴趣吗? 之前,有人告诉我说现实世界对我而言太难了。...《计算机程序设计艺术》是一个宣言。它讲述了我多么喜欢数学以及我希望的学习方式。从第 1 页开始,我开始讲关于算法的故事。那时候大多数教科书都没有探索科学发现中人的一面。...我的程序连接点的方式就像是对优秀书法家的工作进行反向工程(reverse-engineered)。比如字母 S 中有一个点是曲率由正变负的点,然后会稳定一段时间。...这个字母的设计者遵循了一些逻辑来让该线条变成字母的形状。我不仅希望体验这种设计结果,还想理解其背后的智力过程。这就像编写一个计算机程序。 ?...Phyllis(Astrid Benson Winkler)是一位出色的秘书。她能读懂我的手写内容并让它们以更美丽的方式呈现出来。打印技术日渐式微,因为这种方法虽然经过验证,但成本却过于高昂。

    50720

    苹果新推出的CoreML怎么用?有哪些bug?这里有一份教程

    不过在Xcode漫长的下载过程中,你可以继续把这篇文章的剩余部分看完,之后就能进行下面的操作了。 下面这个是我编写的一个演示iOS中新引入的机器学习功能的小样例。...第一个代码片段(见上图)只是简单尝试创建一个变量来存储你所选模型的视觉展示。即使在这一节中出现了错误,项目仍能被编辑。我在Xcode 9测试版中发现了不少bug,这是其中一个。...例如,项目中的模型可以以图片作为输入,并且返回一个描述性字符串作为输出。对于非基于图像的模型,苹果已经创建了小型示例项目演示它的使用方法,它独立于Vision,只依赖Core ML。...你可以在项目导航器中看到尝试此模型的不同图像。用其他任何文件名替代“airport”字符串,建立并且运行项目,看看如何将结果输出到控制台更改。 最后一个片段代码只接受请求的结果并会将它打印出来。...在这个Demo中,我没有设置出错时提醒之类的机制,所以一旦出现了错误,整个程序就会崩溃。 另一个影响项目的大bug是将文件拖放带项目导航器中发生的。

    1.5K70

    笨办法学 Python3 第五版(预览)(三)

    练习 32:做决策 在这本书的前半部分,你主要只是打印出一些称为“函数”的东西,但一切基本上都是直线的。你的脚本从顶部开始运行,一直到底部结束。...在这个练习中,我们将使用for-loop来构建和打印各种列表。当你做这个练习时,你会开始明白它们是什么。我现在不会告诉你。你必须自己弄清楚。...input 的参数是一个字符串,它应该在获取用户输入之前打印作为提示。 练习 36:设计和调试 现在你已经了解了if语句,我将给你一些关于for循环和while循环的规则,这将帮助你避免麻烦。...第一步,我会写出我对转换的了解: C 等于 (F - 32 ) / 1.8。我应该询问用户输入 F,然后打印出 C。 一个非常基本的数学公式是理解问题的简单方法。...当我的脚本最终工作时,我会删除它并使用我所知道的重新编写它。也许这一次我直接写 Python,或者我再次重复这个过程。这样做会让我确认自己实际上是可以做到的。这不仅仅是愚蠢的运气。

    16010

    基于点云的视觉引导系统-方案解读.1

    项目缘起: 大哥在展会上面看到了这个东西 运行起来的样子 So~就自己做一个!...) 奥比中光的Zora P1开发板:板子上跑的是armbian操作系统,部署的是点云采集和点云匹配程序,点云采集采用C++编写,基于奥比中光官方提供的OpenNI2 SDK。...Armbian是其他项目可以信赖的单板计算机(SBC)的基本操作系统平台。...但是,普通开发者通常不具备上述条件,面临的情况常常是没有标定板和红外光源。为此,项目使用自制标定板,即通过代码生成高分辨率的棋盘格图像,并用打印机将其打印出来,贴在平板上。...现在用的比较多的是张正友博士的棋盘格标定法(hhhh,大佬也姓张) 也叫标定板 好,我们自己写程序实现这个标定板的生成。

    64620
    领券