81i核心生成器-负数可以用于存储核心COE基础10格式吗?

描述

当我将.COE文件设置为BASE-10(十进制)格式时,核心生成器RAM \ROM系数文件不允许我使用负数。

解决方案

核心生成器81i和早期版本不能正确解析带有负数的COE文件。

为了解决这个问题,将数字转换成两个补码,然后使用二进制补码数的十进制版本。

例如

7位中的数字10是:(两补)

1110110℃

如果格式不是两个补充,那么相同二进制数的十进制值将是54。

这是由下面的公式决定的:

2×2 ^(n-1)+原始值=变化值。

这将给出正确的十进制值以获得正确的二进制格式。

当输出被假定为两个补码时,预期的负十进制值将是正确的。

下面的脚本允许MATLAB将.COE文件转换为:

函数out=COEYCREATED(t)

对于(i=1:长度(t))

如果(t(i)& lt;0)

t(i)=t(i)+(2*(2 ^ 11));

结束语

结束语

out=t;

这个Matlab脚本处理一个数组的值,并产生正确的值。

编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-07-30 11:59:48 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它