将十进制数转换为二进制数

2024-02-10

我目前正在阅读 Charles Petzold 的书《Code》。在其中,他解释了如何使用以下模板将十进制数转换为二进制数:

                [ ]   [ ]   [ ]   [ ]   [ ]   [ ]   [ ]   [ ]
                ÷128  ÷64   ÷32   ÷16   ÷8    ÷4    ÷2    ÷1
                [ ]   [ ]   [ ]   [ ]   [ ]   [ ]   [ ]   [ ]

在书中,他对如何使用模板的解释如下:

“将整个十进制数(小于或等于255)放入上方的框中 左角。将该数字(被除数)除以第一个除数 (128),如下所示 表明的。将商放入下面的框中(左下角的框),然后 其余的放在右边的框中(顶行的第二个框)。第一个余数是下一个计算的被除数,该计算使用除数 64。以相同的方式继续通过模板。

请记住,每个商要么为 0,要么为 1。如果被除数小于除数,则商为 0,余数就是被除数。如果被除数大于或等于除数,则商为 1,余数为除数 - 除数。以下是 150 的操作方法:”

                [150]  [22]   [22]   [22]   [6 ]   [6 ]   [2 ]   [0 ]
                ÷128   ÷64    ÷32    ÷16    ÷8     ÷4     ÷2     ÷1
                [1 ]   [0 ]   [0 ]   [1 ]   [0 ]   [1 ]   [1 ]   [0 ]

但我很困惑!当我按照指示进行计算时,我得到了截然不同的结果。我正在做的事情如下:

150 ÷ 128 =1.171875(我没看到上面的 22 从哪里来?)所以,我在 150 下面的框中放了一个 1,然后携带171875并用它作为下一次计算的被除数,这当然会让我陷入各种各样的问题,最终,不是二进制数 10010110!

有人能告诉我哪里出错了吗?


22 是 150/128 的余数。

由于您已经确定 150“中”有 1 128,并为该位赋予了一个值,因此您可以忘记 150“中”的 128,因此您将其从 150 中取出,留下我们的 22。然后是时候值 64 的数字:64 不会进入 22,因此该数字是 0。对于值 32 的数字也是如此。然后,对于值 16 的数字:16 进入 22 一次,所以那里有一个 1 数字,现在你已经完成了 22 中的 16,所以把它拿走——留下 6。依此类推。

(考虑一个类似的以 10 为基数的情况,比方说 309。取 100 列;309 中有 3 100 个,所以你在那里放一个 3。现在还剩下 9。然后取 10 列;9 中有 0 个 10 ,所以你在那里放了一个 0。然后是 1 列:9 有 9 个 1,所以你在那里放了一个 9。现在什么都没有剩下了——你就完成了。)

我有一种可怕的感觉,这可能会让人困惑而不是澄清,但无论如何我就是这么想的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将十进制数转换为二进制数 的相关文章

  • 如何计算python 2D散点占用面积

    我使用 matplotlib 绘制了这两个 2000 个点的序列 从图片上看 前2000点占用的面积比后2000点要小 但如果我想定量计算2000个点的第一序列和第二序列占用了多少面积 该怎么办 我真的很感谢任何帮助 建议或意见 非常感谢
  • 比 in_array 更快?

    我需要将一个值与一组数组进行比较 但是 我需要比较 foreach 中的多个值 如果使用 in array 它可能会很慢 非常慢 有没有更快的替代方案 我当前的代码是 foreach a as b in array b array 谢谢 你
  • 算法 - 如何有效删除列表中的重复元素?

    有一个list L 它包含以下元素任意类型each 如何有效删除此类列表中的所有重复元素 必须保留订单 只需要一个算法 因此不允许导入任何外部库 相关问题 在Python中 从列表中删除重复项以使所有元素都是唯一的最快算法是什么在维持秩序的
  • 用于整数分区的优雅 Python 代码 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我尝试编写代码来解决标准整数分区问题 维基百科 http en wikipedia org wiki Partition 28numb
  • 什么是确定性快速排序?

    我一直在阅读有关快速排序的内容 发现有时它被称为 确定性快速排序 这是普通快速排序的替代版本吗 普通快速排序和确定性快速排序有什么区别 普通 确定性 快速排序在特定数据集上的行为可能非常差 例如 选择第一个未排序元素的实现在已排序数据上的时
  • Numpy:具有特定条件的线性系统。无负解

    我正在使用 numpy 编写 Python 代码 在我的代码中 我使用 linalg solve 来求解 n 个变量中的 n 个方程的线性系统 当然 解决方案可以是积极的 也可以是消极的 我需要做的是始终有正解或至少等于 0 为此 我首先希
  • 为什么我的 Project Euler Problem 12 算法这么慢?

    我已经在 Scala 中为 PE P12 创建了解决方案 但速度非常非常慢 有人可以告诉我为什么吗 如何优化这个 calculateDevisors 简单的方法和calculateNumberOfDivisors 除数函数具有相同的速度 i
  • 所有可能的骑士在普罗梅拉的棋盘上移动

    是否有可能用马从初始位置 I J 绕过大小为 N N 的棋盘 并且只访问每个方格一次 define A True A I J false active proctype method bit I 4 bit J 3 bit K 1 bit
  • 两个 16 位数字相乘 - 为什么结果是 32 位长? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如果我将两个 16 位数字相乘 结果将是 32 位长 但为什么会这样呢 对此有何明确解释 为了我的正确理解 其计算方法是 n 位数字乘以
  • 寻找下一个素数的最佳方法(Java)

    我被要求编写一个程序以最佳方式找到下一个素数 我编写了这段代码 但找不到最佳答案 有什么建议么 public static int nextPrime int input input now find if the number is pr
  • 数组中最远的相等元素

    假设你有一个未排序的数组 你如何找到两个相等的元素 使它们成为数组中最远的元素 例如8 7 3 4 7 5 3 9 3 7 9 0ans 将是7 9 7 1 8 我想到了以下几点 initialise max 0 using hashing
  • 图像算法上的物体计数

    我又接到学校任务了 这次 我的老师给我的任务是创建算法来计算图片上有多少只鸭子 该图与此类似 我想我应该使用模式识别来搜索上面有多少只鸭子 但我不知道每只鸭子适合哪种图案 我认为你可以通过分割鸭嘴并计算鸭嘴的数量来解决这个问题连接的组件 h
  • 用于计算三角函数、对数或类似函数的算法。仅限加减法

    我正在修复 Ascota 170 古董机械可编程计算机 它已经开始工作了 现在我正在寻找一种算法来展示其功能 例如计算三角或对数表 或类似的东西 不幸的是 从数学运算来看 计算机只能进行整数的加减法 从 1E12到1E12的55个寄存器 甚
  • 从原点开始在离散 2D 网格上迭代向外螺旋的算法

    例如 这是预期螺旋的形状 以及迭代的每个步骤 y 16 15 14 13 12 17 4 3 2 11 18 5 0 1 10 x 19 6 7 8 9 20 21 22 23 24 其中线条是 x 轴和 y 轴 以下是算法每次迭代 返回
  • 简单的排名算法

    我需要创建一个民意调查 按照项目的好坏顺序创建一个排名列表 我打算向每个用户展示两个项目 让他们选择一个他们认为更好的项目 然后多次重复这个过程 它有点类似于您在社交网络电影 我应该如何根据收到的答案对项目进行排名 看着那 这ELO国际象棋
  • 关于Marching Cubes算法的澄清

    关于Marching Cubes 我对其算法和实现有一些疑问 我已经阅读了 Marching Cubes 的 Paul Bourke 优秀文章以及网站上可用的源代码 但是 我在理解以及如何以自己的方式实现算法方面仍然遇到了一些问题 问题如下
  • String.Format 小数,带有千位分隔符和强制小数位

    我想String Format小数 使其同时具有千位分隔符和强制小数位 3 例如 Input 123456 12 78545 8 Output 123 456 120 78 545 800 我努力了 String Format 0 0 0
  • 定点数学比浮点运算快吗?

    多年前 即 20 世纪 90 年代初期 我构建了图形软件包 该软件包基于定点算术和预先计算的 cos sin 表格以及使用牛顿近似方法进行 sqrt 和对数近似的缩放方程来优化计算 这些先进技术似乎已经成为图形和内置数学处理器的一部分 大约
  • 数独算法,暴力破解[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在尝试
  • 是否有一种算法可以在线性时间内计算数组反转?

    我知道有多少倒转 en wikipedia org wiki Inversion 28discrete mathematics 29 in an n 元素数组可以在 O n log n 操作使用增强型归并排序 http www geeksf

随机推荐

  • opencv/c++ 中正确的阈值函数

    我是图像处理和 opencv 的新手 我需要对灰度图像进行阈值处理 该图像包含0到1350之间的所有值 我想保留所有大于100的值 我在opencv中找到了这个函数 cv threshold Src1 Last 100 max BINARY
  • 在工作副本中动态更改 SVN+SSH URI 中的用户名

    我正在使用 SVN SSH 从 SVN 服务器上签出存储库的工作副本 该服务器上的所有开发人员都是 SVN 服务器的成员 developer组并对存储库目录和关联元数据具有完全读 写权限 svn co svn ssh email prote
  • Kubernetes 集群中的 Coredns 处于挂起状态 [已关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我正在尝试配置 2 节点 Kubernetes 集群 首先 我尝试在 CentOS VM 上配置集群的主节点 我已使用 kubeadm
  • 无法在 azure 容器实例中将 azure 文件共享装载为 mongodb 卷

    我正在尝试使用 azure 容器实例设置 mongo DB 实例并将其安装在 Azure 文件共享上 我们收到以下错误 initandlisten WiredTiger error 1 1579245437 724939 1 0x7f941
  • 在 Nativescript 和 Angular Schematics 的共享代码中找不到模块

    我正在使用 Angular 和 Nativescript Schematics 我已经安装了nativescript ui sidedrawer 当我跑步时 tns run ios bundle 本机版本已编译并部署到设备 但是当我运行时
  • doall dorun dideq 和 for 函数有什么区别?

    功能有什么区别doall dorun doseq and for 我发现一些信息分散在互联网上 但我认为最好将这些信息集中在这里 dorun doall and doseq都是为了强制惰性序列 大概是为了产生副作用 dorun 强制返回时不
  • 使用 NSPredicate 按对象属性过滤

    我有一个可变的自定义对象数组 例如 我想按对象的属性过滤该数组myObject attributeOne 如何创建 NSPredicate 来使用 myArrayOfObjects filterUsingPredicate
  • UI层向业务层返回什么?

    我正在编写一个 ASP NET 应用程序 它有 UI 层 业务逻辑层和数据访问层 我从数据层将业务对象返回到业务逻辑层 并将它们传递到 UI 层 但是 当我想使用 UI 层的数据执行保存 插入时 我不确定该怎么做 我应该在 UI 层创建业务
  • Python (2.4) 字典中的排序

    r dict answer1 value1 answer11 value11 answer2 value2 answer3 value3 answer4 value4 for i in r dict if answer in i lower
  • Fontforge 脚本如何为字形添加连字

    我正在 Fontforge 上使用脚本制作字体 一切顺利 但我有这个问题 我不知道如何指定选定的字形 如果其他两个字形同时出现 则显示选定的字形 我已经为此创建了查找表和子表 但我不知道为指定字形定义一些连字的函数 以下是创建表和子表以将连
  • 使用 Python 和 xlwings 在 Excel 中查找活动/选定单元格的范围

    我正在尝试用Python 使用xlwings 编写一个简单的函数 该函数读取Excel中当前的 活动 单元格值 然后将该单元格值从活动单元格写入下一列中的单元格 如果我使用绝对引用指定单元格 例如 range 3 2 那么一切正常 但是 一
  • 在 Linux 中向当前日期添加 x 秒

    我这里有两台 Linux CentOS 6 0 机器 我需要在当前日期时间上添加 或删除 5 秒 最后 我的两台机器都会有5秒的差距 一台时间正确 另一台或多或少有5秒 我知道我可以使用以下命令更改日期 date s DD MMM YYYY
  • 对一个集合的元素执行操作并迭代结果以执行其他操作

    如果我有2个收藏 List
  • Eclipse Markdown 表未呈现

    我现在已经在 Eclipse 中尝试了四种不同的 Markdown 编辑器 但它们都无法在预览中渲染表格 它们总是平坦的 一个简单的表就像 hans pans 1 2 渲染得像 hans pans 1 2 我知道语法是正确的 因为它在 Ec
  • 根据输入值重定向到页面

    我正在尝试在页面上创建一个需要用户输入文本的表单 提交表单后 用户将被重定向到分配给它的页面 我的问题是我哪里出了问题 我应该如何解决这个问题 有人可以添加 JSFiddle 或 Codepen io 笔用于清除目的吗 例如 用户输入并提交
  • 在 R (CRAN) 中创建和裁剪网格

    我需要在 gstat 库中创建一个用于空间插值的掩模网格 具体来说 我有随机分布的不同采样点 我需要创建包围这些点的最小凸多边形 然后 我必须创建一个空间网格 该网格应由计算的外壳裁剪 以将插值限制在该多边形的范围内 如果有人能向我解释详细
  • Java限制资源使用

    有没有办法限制java使用的核心数量 同样 是否有可能限制该核心的使用量 您可以在 Linux 上使用任务集 您还可以降低进程的优先级 但除非 CPU 繁忙 否则进程将获得尽可能多的 CPU 我有一个将线程专用于核心的库 称为 Java T
  • 启动时自动运行 Jetty

    我正在尝试让 Jetty 在我的 Ubuntu 上自动启动 我已经完成了这些命令 cp opt jetty bin jetty sh etc init d update rc d jetty sh defaults 但是当我运行它时 我得到
  • sqlalchemy 中的scoped_session(sessionmaker()) 或普通sessionmaker() ?

    我在我的网络项目中使用 SQlAlchemy 我应该用什么 scoped session sessionmaker 或普通sessionmaker 为什么 或者我应该使用其他东西 model py from sqlalchemy impor
  • 将十进制数转换为二进制数

    我目前正在阅读 Charles Petzold 的书 Code 在其中 他解释了如何使用以下模板将十进制数转换为二进制数 128 64 32 16 8 4 2 1 在书中 他对如何使用模板的解释如下 将整个十进制数 小于或等于255 放入上