概述:应用中需要将数组的数据整体进行一次左移或右移操作,如何简单,快捷,通用地实现。 详述: 比如:Temp[4] = {0x80,0x40,0x20,0x10}; 左移一次变成Temp[4] = {0x00,0x80,0x40,0x20)}; 再移一次变成Temp[4] = {0x01,0x00,0x80,0x40}; 备注: 1、数组的长度可能是8甚至更多,例子用4个数据是为了说明简单 2、为了提高通用性和可移植性,尽量不要采用嵌入式汇编来实现,宜用ANSI C来实现。 3、目前已测试过实现过的方法是先左移Temp[0],再拆分Temp[1]的最高位内容,装配到Temp[0]的最低位,循环到数组的所有单元都完成,此法占用CPU时间太多。
|