- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个计算如下:
1472 / 48 = 30.666667
(30 * 48) = 1440
(0.666667 * 48) = 32
所以我需要的数字是1440和32,可以用第一次计算的实部和小数部分计算出来。使用以下代码,我找到了实数部分,但小数部分是按比例计算的。
#define SHIFT_AMOUNT 16
// 2 bytes is used to map divisions
#define SCALE_FACTOR 65535 // (2^16)
#define SHIFT_MASK ((1 << SHIFT_AMOUNT) - 1)
uint32_t total_msgs = DATA_LENGTH << SHIFT_AMOUNT;
total_msgs /= PAYLOAD_SIZE;
uint8_t real_part = total_msgs >> SHIFT_AMOUNT; // 30
uint32_t decimal_part = total_msgs & SHIFT_MASK; // 43690
现在进行最后一次计算,我卡住了。我如何从 43690 中得到 32(实际上是 ((43690/65535) = 0.666667)?
最佳答案
解决这个问题的常用方法是%
操作符:
quotient = DATA_LENGTH / PAYLOAD_SIZE;
fraction = DATA_LENGTH % PAYLOAD_SIZE;
关于c - 在定点计算中使用小数部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43726046/
当我在定点 Z3Py 中启用解释生成选项时,我收到包含以下消息的核心转储。 Error setting 'DL_GENERATE_EXPLANATIONS', reason: unknown opti
我正在开发一些代码,可以从 HW 获取浮点或定点数据。目前我们将其作为 float 。 底层API都是定点的。所以我们必须将数据作为定点传回。我们使用的算法是 Cholesky。我想知道为什么我们必须
我有一个关于在 MATLAB 中为 Texas Instruments TMS320C64xx DSP 编写算法的问题: 我在 MATLAB 中草率地实现了我的过滤器。我的目标是使用 MATLAB E
我需要将 float 转换为Q31定点,Q31表示1个符号位,0位表示整数部分,31位表示小数部分。这意味着 Q31 只能表示 [-1,0.9999] 范围内的数字。 根据定义,从浮点转换为定点时,会
我正在使用第 3 方定点 antilog() 函数来计算分贝 out_mag = 10^( in_db/20 ) 的幅度。 antilog() 采用 Q6.25 格式作为输入,并在输出时提供 Q16.
我想将一个定点数(Q31/int32 表示具有 31 个小数位的小数)除以另一个 Q31/int32。我想计算z = y/x,知道abs(x)>abs(y)。因此,z<1,因此可以表示为另一个Q31/
我是一名优秀的程序员,十分优秀!