首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

问下数的进制问题,谢谢!!

问下数的进制问题,谢谢!!

由A/D转换得到的寄存器中的数据应该是16进制的吧,但是我怎么把它和10进制的数进行运算呢?

比如:

A/D转换得到的数据在寄存器AAAA中(应该是16进制的吧?),我想把AAAA中的数存在变量a中,然后将a乘以10存到b中(其实是一系列的运算,不止乘以10),然后将b中的数据存到另外一个寄存器中,比如BBBB(此时还应该把b转换为十六进制吧?)

问题1、a,b分别应该为什么变量类型?

问题2、上面的各个变量在运算中怎么进行数制的转换呢?(我用的是c语言编程,要是插入些汇编也可以,希望各位高手给出c或是汇编的代码)

问题3、要是A/D转换的结果是10位的该怎么办呢?

谢谢各位高手了!!!

[此贴子已经被作者于2009-4-26 12:10:22编辑过]

如果要用到标准的C进行计算,应该先把它们都转换为16位有符号或无符号数再进行运算。

海纳百川  有容乃大

谢谢斑竹的回答,但是我还有一个疑问:

有变量a,d

int char a,d; //a,d必须为int char型8位变量

float b,c; //为了下面计算而设的变量

我现在想将a赋给b的低8位(其余位为0)

c=b*1.234; //其实是一系列的涉及小数的运算

再读出c整数部分的低8位赋给d,我应该用什么方法呢?能否烦劳斑竹给出相应程序,我还是个新手。谢谢!!

返回列表