主题
取位运算
取位运算(类型名
ddc_bitget):取输入整数部分的某一位(0/1),选"整数"则取整(舍弃小数)。
这块是什么
- 编辑器里的名字:取位运算
- 类型名:
ddc_bitget(写在程序文件 ddc.json 里的身份,AI 生成或改逻辑时按它对名,别猜中文名) - 分类:计算(数值加工)
- 形态:值块
- 状态:无状态
取输入整数部分的某一位(0/1),选"整数"则取整(舍弃小数)。
块面长什么样
图上这一颗就是刚把它从工具箱拖到画布时的样子:下拉框和输入框里是默认值,凹口(←形的那个孔)是要接值的地方,右边凸起是能被别人接的输出口。
块面参数(在块上直接填/选)
- BIT:BIT0 / BIT1 / BIT2 / BIT3 / BIT4 / BIT5 / BIT6 / BIT7 / BIT8 / BIT9 / BIT10 / BIT11 / BIT12 / BIT13 / BIT14 / BIT15 / 整数部分=int
等号后面那串(如 =year)是画布上不显示、但程序文件里必须照抄的值(写出来是 "part": "year");没有等号的选项,界面上看到的和文件里填的是同一串。
连线端子(从别的块接进来)
- 输出 Number
- 端子 IN
下发到设备变成什么
- 生成 ddc.json 的操作(op):bitget
手册里其它相关位置
- 所属分类章节:2.4 本章导览
- 同类块一览:2.0 功能块速查总表
在整数和它的二进制位之间来回
一个整数按位拆开是 16 个 0/1(BIT0 在最低位)。本块取出其中一位,输出 0 或 1。
BIT选 BIT0~BIT15 中哪一位,或者选整数- 选「整数」时不是取位,而是取整数部分(舍弃小数) —— 块上就这一个下拉,两件事都在它里面
- 输入孔
IN接要处理的数值
典型用途:
| 想做什么 | 怎么接 |
|---|---|
| 把一个状态字拆成 16 个开关量分别判断 | 每个判断前各放一个取位块,BIT 分别选 BIT0、BIT1…… |
| 把带小数的计算结果取整后写入 D 寄存器 | BIT 选「整数部分」 |
「整数部分」是舍弃小数,不是四舍五入
26.9 取出来是 26。要的是"接近哪个整数",得自己在前面加一步处理。
反向操作(把 16 个开关量并成一个整数)在 合并位运算。