如何把一个int型数据分成两个char型数据,再转换回来啊?急急急!!

来源:百度知道 编辑:UC知道 时间:2024/07/09 04:01:35
我用的是c51编写的程序,想把数据存储到芯片里,之后再提取出来,但是芯片只能存储8为数据,我想把一个16位的int转换为两个8位的char,再合并回去,应该怎么做啊,高手指点啊!!

如果是在C语言环境下写这样的程序,就直接存储读取就好了,编译器会很好的完成你的目的的;
如果是汇编写程序,就向上面回答的那样,分为高低8位处理。

int i;
char lo = (char)(i & 0xff);
char hi = (char)((i >> 8) & 0xff);

把数据存储到芯片的数据读出来,然后把高8位乘以256再加上低8位!