//将n左移m位
int byte_to_left_move(int n , int m)
{
int i , ret = 1 ;
if(n == 0 || n < 0)
{
return ;
}
if(n == 1)
{
for(i = 0 ; i < m ; i++)
ret *= n * 2 ;
}
if(n > 1)
{
for(i = 0 ; i < m ; i++)
ret *= n ;
}
return ret ;
}
//将n右移m位
int byte_to_right_move(int n , int m)
{
int i , ret = 1 ;
if(n == 0 || n < 0)
{
return ;
}
if(n == 1)
{
ret = 0 ;
}
if(n > 1)
{
for(i = 0 ; i < m ; i++){
n /= 2 ;
}
ret = n ;
}
return ret ;
}
闲着无聊,自己写了两个API接口,测试通过,但可能还没完善,不过初步的实现了将一个数左移右移N位的算法,算法实现非常简单,就是循环的乘和除,这时候明白了,其实基础是很重要的,比如开始学习C语言的时候,老师教的累乘和累加的算法,尽管简单,但还是用途很大,这两个API也有类似的,比如左移的接口就有累乘的性质在里面。