Fixed-point multiplication (C166 A*B/B)
| I want to multiply two fixed point numbers. After the multiplication I have to shift the result so that the binary point is correct. Example: int a; The multiplication a*b produces a long int value in the MD register. After the shift operation the int result (the lower byte) should be stored in c. |
|
|
Read-Only
Author
Andrew Neil Posted
22-Oct-2003 09:34 GMT Toolset
C166 |
I don't know the '166, but I suspect this is a 'C' issue rather than a processor issue. You could look up the promotion rules in K&R, or you could just try experimenting with casting a, b, and/or the product to long. |
|
Read-Only
Author
Mike Kleshov Posted
22-Oct-2003 09:56 GMT Toolset
C166 |
As Andrew said, this is a C issue. Take your favourite book on C and read about types and expressions. There are a few pitfalls there. - mike |
|
Read-Only
Author
Bruno Büsser Posted
22-Oct-2003 10:45 GMT Toolset
C166 |
That's it! The product a*b is stored as 32 bit value in MD register, then the MD register value is arithmetic shifted right by 10 and the lower 16 bits stored in c. |
http://www.keil.com/forum/3549/
Fixed-point multiplication (C166 A*B/B)的更多相关文章
- ADC In An FPGA
http://davidkessner.wordpress.com/2011/05/01/adc-in-an-fpga/ Geek Alert! What follows is very techn ...
- c166 -div
unsigned short a=10; unsigned short b; unsigned short c;unsigned long d; b = (unsigned short)(d/2400 ...
- Position属性四个值:static、fixed、relative、absolute的区别和用法
1.static(静态定位):默认值.没有定位,元素出现在正常的文档流中(如果设置 top, bottom, left, right, z-index这些属性就不起做作了). 2.relative(相 ...
- fixed数据类型
在处理图形运算,特别是3D图形生成运算时,往往要定义一个Fixed数据类型,我称它为定点数,定点数其时就是一个整形数据类型,他的作用就是把所有数 进行转换,从而得到相应类型的整型表达,然后使用定点数进 ...
- CSS:position:fixed使用(转)
position属性规定元素的定位类型,即建立元素布局所用的定位机制.任何元素都可以定位,不过绝对定位或固定定位元素会生成一个块级框,而不论该元素本身是什么类型.相对定位元素会相对于它在正常流中的默认 ...
- setprecision **fixed
#include <iostream> #include <iomanip> using namespace std; int main( void ) { const dou ...
- Position属性四个值:static、fixed、absolute和relative的区别和用法
Position属性四个值:static.fixed.absolute和relative的区别和用法 在用CSS+DIV进行布局的时候,一直对position的四个属性值relative,absolu ...
- iframe中positioin:fixed失效问题
页面中嵌套的iframe 内的 position:fixed元素定位失效fixed正常页面 此时position:fixed是根据浏览器窗口定位的,下拉一直位于左上角:以iframe形式嵌入后 此时p ...
- setprecision、fixed、showpoint的用法总结
首先要加头文件:iomanip 一:setprecision 作用:控制输出流显示浮点数的数字个数,setprecision(n)就是输出的n个数,会有四舍五入. 比如:double s=20.784 ...
随机推荐
- 20165326 学习基础和c语言基础调查
学习基础和c语言基础调查 一.关于个人技能 阅读了娄老师关于做中学的文章,我想起了自己之前学习技能的经历. 从小到大我学过的东西不少,除学校的教育课程外,我还参加过各种兴趣班,书法.绘画.舞蹈.吉他. ...
- day 20 collection模块 time 模块 os 模块
一.collection模块 1.namedtuple: 生成可以使用名字来访问元素内容的tuple 2.deque: 双端队列,可以快速的从另外一侧追加和推出对象 3.Counter: 计数器,主要 ...
- Linux 添加程序图标到开始菜单中
Linux平台的Ubuntu系统中,开始菜单中的程序都在/usr/share/applications/目录下,文件格式都是xxxx.desktop ========================= ...
- slaac
https://zhidao.baidu.com/question/460186176.html slaac是IPv6中的术语.Stateless address autoconfiguration, ...
- python检测网络延迟
#!/usr/bin/env python # coding: utf-8 # coding: cp950 ''' Create Date: 2012-11-06 Version: 1.0 Descr ...
- 性能测试-6.VUG脚本参数化
前言:(原文地址)版面调整 什么是VUGEN action以及作用 参数化 参数化取值(9种组合,在不同场景中如何运用) 一.VUGEN是 LoadRunner 用于开发 Vuser 脚本的主要工具. ...
- phpcms 操作数据库 增删改查
数据库的其他类继承的都是libs/class/model.class.php 这里面有写好的操作数据库的常用方法 1.增 insert($data, $return_insert_id = false ...
- json2的基本用法
<script type="text/javascript" src="/CoreResource/JS/json2.min.js"></sc ...
- Android内核栈溢出与ROP(CVE-2013-2597)
一.准备 由于内核栈不可执行(NX),栈溢出利用需用到ROP.简单回顾一下ARM ROP. 漏洞演示代码如下,网上随便找了个. char *str="/system/bin/sh" ...
- C#正则表达式语法教程
C#语法之正则 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新!助力 ...