bc 及其 ibase/obase 选项:

2024-02-16

我偶然发现了一个奇怪的错误,我想:

我尝试将“512”读取为基数 6 的数字,并将其输出为基数 16:

echo "ibase=6;obase=16;512" | bc
161

正如你所看到的,输出是161,但它应该是bc(原文如此!)。我尝试使用基数 10:

echo "ibase=6;obase=10;512" | bc
512

该值不变。好奇的!默认 obase 是 10。如果我省略它:

echo "ibase=6;512" | bc
188

嗯,看来是对的。在两步过程中,它的工作原理是:

echo "obase=16;"$(echo "ibase=6;512" | bc) | bc
BC

所以我为不同的基础制作了一个脚本,但这让我感到困惑:

for ib in {6,8,10,16}; do echo $ib; for ob in {10,16}; do echo -en $ib $ob"     \t => " ; echo "ibase=$ib;obase=$ob;333" | bc ; done; done; 
6
6 10         => 333
6 16         => 108
8
8 10         => 333
8 16         => 119
10
10 10        => 333
10 16        => 14D
16
16 10        => 333
16 16        =>  01 15 05

我应该提交错误报告,还是我会错过显而易见的事情?我真的不敢相信这样一个基本的工具被破坏了。


不是错误。

As soon as ibase=6 is interpreted, numbers are read in base 6. So ibase=6;obase=16 makes obase's value to be 16base 6 which is invalid, and is interpreted as 11decimal.

从手册页:

对于多位数字,bc 将所有大于或等于 ibase 的输入数字更改为 ibase-1 的值。

So 16 is interpreted as 15base 6 which is 11decimal. And the conversion is correct.

Set obase before ibase,或者确保在 base 中指定您的 obaseibase.

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

bc 及其 ibase/obase 选项: 的相关文章

  • 如何让 bc(1) 打印前导零?

    我在 Makefile 中执行类似以下操作 echo 0 1 0 1 bc 当然 在真实文件中 数字是动态的 它打印 2但我想打印它0 2 我想这样做而不诉诸于sed但我似乎找不到如何获得bc打印零 或者是bc只是无法做到这一点 您还可以使
  • 有没有办法访问replicate()中的迭代次数?

    有没有办法访问当前的复制数replicate函数 这样我就可以将它用作重复评估中的变量 例如 在这个简单的示例中 我想使用当前复制数来生成当前复制数的可变长度向量列表 例如 x下面代表当前的复制 replicate 3 rep x samp
  • 从数字数组中获取一个数字

    要将数字拆分为给定基数的数字 Julia 有 digits 功能 julia gt digits 36 base 4 3 element Array Int64 1 0 1 2 逆向操作是什么 如果你有一个数字数组和基数 是否有一个buil
  • 以 10 为基数的 int() 的文字无效 - django - 更新

    我是 django 初学者 并且 我正在尝试制作一个像组合框一样的子父项 条形取决于城市取决于国家 地区 我收到此错误 更新 更改了外键的模型和默认值 但仍然是相同的错误 有什么帮助吗 谢谢 这是 models py from django
  • 在java中实现抽象方法/类

    我可以在java中的抽象基类A中实现抽象方法吗 如果答案是肯定的 并且基类 A 中有一个已实现的抽象方法 并且有一个来自 A 的派生类 B B 不是抽象的 B 还必须实现那个基本抽象方法吗 如果我正确理解你的问题 是的 public abs
  • html 链接不起作用(使用基本 href)

    你好 我正在使用这个标签 与此标签相关联 a href main page mainpage html br b main b a 并在浏览器中获取 http awebsite ca main page mainpage html C2 9
  • 引用 CSS 文件时,IE 不支持基本元素中的相对路径

    我有一个网站使用base tag为相对 URL 设置绝对路径 它在我测试过的所有浏览器中运行良好 除了 IE 大惊喜 根据 IE 对 CSS 文件的请求 它似乎没有注意到基本标签 它确实承认基本标签以及页面上的其他所有内容 为什么会发生这种
  • 在 Excel 中将 HEX 转换为 RGB

    我有一列 HEX 和三列 R G 和 B 如何将 HEX 转换为 RGB 例如ff0000 to R 255 G 0 and B 0 我知道前 2 个字符ff属于 R 接下来的200属于 G 最后的200属于 B 所以我必须使用 LEFT
  • 为什么在Java中查询日期BC变成AD?

    我的Java程序连接到一个数据库 Oracle XE 11g 其中包含许多日期 OracleXE的日期格式设置为syyyy mm dd 在数据库中使用负日期 基督之前 进行查询效果很好 当我用Java做的时候 它们都变成了AD Anno D
  • 保存base64图像python

    我正在尝试使用 Python 保存 Base64 编码的图像 这里的字符串太大而无法发布 但这是图像 当 python 接收到最后 2 个字符时 虽然字符串没有格式化 所以我这样做 import base64 data data image
  • 更改 MVC4 上的基本视图类型

    我从下面的链接读到了一篇关于更改 MVC 上的基本视图类型的文章 http haacked com archive 2011 02 21 changing base type of a razor view aspx http haacke
  • 为什么 parseInt(8,3) == NaN 和 parseInt(16,3) == 1?

    我正在阅读this http jibbering com faq notes type conversion 但我对里面写的内容感到困惑带有基数参数的 parseInt chapter 为什么会这样parseInt 8 3 NaN and
  • 有没有一个好的python库可以将数字转换成各自的“符号”? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 0 0 1 1 9 9 10 a 11 b 35 z 36 A 37 B 60 Z 61 10 62 11 70 19 71 1a 72
  • C++ 基数转换

    你好 我正在尝试将一些代码从 Windows 移植到 Linux 我有这个 itoa word aux 2 但 GCC 不承认 itoa 我如何以 C 方式进行到基数 2 的转换 谢谢 Here http en wikipedia org
  • 基类与实用类

    两者应该优先选择哪一个 有一些方法由 A B 和 C 类调用 这些方法是否应该封装在 D 类 A B 和 C 的基础 中 OR 是否应该将这些方法封装在类 U 中 并且其他类创建其对象以根据需要使用这些方法 应该在什么基础上做出决定 Tha
  • Shell:文件内将文本文件的第一个字段从十进制转换为十六进制

    这是我的示例文本文件 cat RealVNC MRU reg 10 Lamborghini 1 16 Terminus 20 Midnighter 5915 35 ThreepWood 1 81 Midnighter 1 58 Midnig
  • GitHub Web UI 中的“base”和“head”存储库是什么?

    GitHub 的 UI 相当不直观且考虑不周 所以这里有一个问题 什么是 头 回购 什么是 基础 回购 不知道是从哪一个抄来的 基础 和 头部 这两个词的意思是相同的 链表的 头 类似于树的 基 GitHub 有叉树和文件树 Head 和
  • 如何将变量传递给 django 中的所有模板? [复制]

    这个问题在这里已经有答案了 我正在尝试将变量 浏览器变量 传递给我的应用程序中的所有模板 关于如何让它发挥作用有什么建议吗 View def browser request primary cat list Categories objec
  • 负整数的基数排序

    我正在尝试对整数 包括负整数 实现基数排序 对于非负整数 我计划为数字0 9创建一个10个队列的队列 并实现LSD算法 但我对负整数有点困惑 我现在的想法是继续为它们创建另一个包含 10 个队列的队列 并分别对它们进行排序 然后在最后 我将
  • 防止在派生类中调用基类实现的接口方法 C#

    是否可以在基类中实现接口并允许在第一个派生类级别调用 覆盖已实现的方法 但阻止从任何进一步的派生类调用它 public interface IInterfaceSample bool Test public class Base IInte

随机推荐

  • django-导入-导出外部管理

    我正在尝试使用 django import export 实现简单的 xls 文件导入并保存到模型 不幸的是 这些文档仅涵盖管理集成 我被困在我的示例代码中 class UploadFileForm forms Form file form
  • 如何从 Core Data 的持久存储中删除所有对象?

    我的应用程序中有核心数据 因此 我获取一个 XML 文件 将数据解析为模型对象并将它们插入到核心数据中 它们保存在持久存储中 当我重新启动应用程序时可以访问它们 但是 我希望能够随意刷新持久存储中的数据 因此我需要首先从存储中删除现有对象
  • 如何使用 client_credentials 从资源服务器访问另一个 oauth2 资源?

    我想使用 client credentials 从反应性资源服务器访问另一个受 oauth2 保护的资源 我使用颁发的令牌访问资源服务器的部分正在工作 但没有使用 webclient 调用其他资源 使用 UnAuthenticatedSer
  • 如何在 Eiffel 中格式化 DOUBLE 以仅打印两位小数?

    在埃菲尔铁塔中 你如何做到这一点 118 1999999999999 打印到 118 20 在其他语言中 这只是 printf 的问题 但在 Eiffel 中似乎没有办法轻松做到这一点 您应该使用类 FORMAT DOUBLE local
  • 对不同的 Android 应用程序使用一个 Google 地图 API 密钥

    我刚刚生成了要在我的 Android 应用程序中使用的 Google 地图 API 密钥 我必须提供应用程序的 SHA 1 指纹和包名称 它看起来像这样 BB 0D AC 74 D3 21 E1 43 67 71 9B 62 91 AF A
  • 计算两个日期之间的星期几小时对

    考虑以下列表星期几小时配对24H format Mon 9 23 Thu 12 13 14 Tue 11 12 14 Wed 11 12 13 14 Fri 13 Sat Sun 和两个时间点 例如 Start datetime datet
  • ffmpeg 给出错误选项 movflags not find

    在 Ubuntu 12 04 LTS 中我使用过 movflags frag keyframe empty moov在我的 ffmpeg 命令中 ffmpeg i http filesbe vocativ internal net 03 4
  • 处理 appwidget 的多个实例

    我有一个配置活动 一个大型小部件提供程序和一个小型小部件提供程序 在配置活动中 我在共享首选项中保存了一些值 我从大大小小的应用程序小部件提供商那里获得了这些共享的偏好 我无法为应用程序小部件提供唯一的 ID 并且每次从配置活动转到应用程序
  • D7 需要苹果风格的“等待”动画

    有谁知道与 Delphi 7 一起使用的 Apple 风格 等待 动画 VCL 组件吗 谢谢 不知道当前的 Apple 外观如何 但这里有一个免费的在线服务来创建 Ajax 加载 gif 文件 http www ajaxload info
  • Spark 构建路径与不兼容的 Scala 版本 (2.10.0) 交叉编译

    当我尝试在 scala IDE 中执行 Spark sql 代码时 出现以下错误 有人可以帮我解决这个问题吗 spark build path is cross compiled with an incompatible version o
  • 在 AngularJS 中只注册一次事件监听器

    我正在将一个事件从我的导航栏控制器广播到另一个控制器 但是如果我多次初始化控制器 当我在应用程序中前后移动时 则在我的控制器上执行的函数 on事件运行多次 因为它已注册多次 rootScope on submitBookingDialog
  • 如何指定DbContext要使用的表的名称

    这是来自的后续问题我之前的问题 https stackoverflow com questions 26404786 dbcontext doesnt give any data 我的印象是 如果数据库中有多个表 则该表的名称DbSet变量
  • 我在哪里可以找到将任意布尔表达式转换为合取或析取范式的方法?

    我写过一个小应用程序 https bitbucket org BillyONeal pevfind overview将表达式解析为抽象语法树 现在 我对表达式使用一系列启发式方法来决定如何最好地评估查询 不幸的是 有些例子使查询计划变得非常
  • Mongoose 不会从 JSON 数组创建子文档

    我正在尝试将包含第一级数据和数组的 JSON 对象写入 MongoDB 相反 发生的情况是所有第一级数据都被存储 但数组中包含的任何内容都没有存储 当记录服务器接收到的数据时 我看到了整个对象 这让我相信我的 Mongoose 代码有问题
  • 获取裸存储库的工作副本

    我有一台服务器 上面有一个用于推送的裸存储库 但是 我的服务器需要有主分支的工作副本 如何仅从裸存储库获取工作副本 您可以简单地将存储库克隆到同一台计算机上的另一个目录 git clone bare repo dir 当前目录将成为您的存储
  • 如何识别哪个容器拥有哪个覆盖目录?

    My var lib docker overlay目录包含我的容器的数据 但目录名称均经过哈希处理 如何确定哪个容器拥有哪个覆盖层 您可以使用jq像这样 docker inspect docker ps qa jq r map Name G
  • BinaryFormatter 中的引用完整性

    Protobuf net 中 AsReference 选项的存在以及 BinaryFormatter 是 图形序列化器 这个词让我假设 BinaryFormatter 不维护引用 并且它会复制每个对象 但我做了一些测试 发现单个 Binar
  • 从 VB.NET 中的 List(Of T) 中删除重复项

    我无法从列表中删除重复项 我究竟做错了什么 Dim Contacts As New List Of Person remove duplicates Contacts Contacts Distinct New PersonEquality
  • 可靠集合缓存作为 Service Fabric 中的缓存

    我的系统使用一堆微服务来处理一个项目 我计划创建一个有状态微服务来保存该项目的最新状态 在该服务中 我计划将所有项目状态存储在可靠的字典中 并且每当访问项目时都会更新该项目的 上次访问 字段 我的要求是 我只想将最近使用的项目存储在可靠的集
  • bc 及其 ibase/obase 选项:

    我偶然发现了一个奇怪的错误 我想 我尝试将 512 读取为基数 6 的数字 并将其输出为基数 16 echo ibase 6 obase 16 512 bc 161 正如你所看到的 输出是161 但它应该是bc 原文如此 我尝试使用基数 1