有关于单片机数据移位的问题,希望大虾们可以帮帮忙啊!!!小弟感激不尽啊。。。

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-17
有关JAVA的数据插入,大虾们帮帮忙啊!!!

你把null设成“”
那两个函数都可以用来执行更新语句

incompatible types; found : int, required:
这个错误可能是你在得到长度的时候直接把Integer class
cast into a int variable了
如:
nt inputLength = 0;
inputLength = bc.getLength(input);
getlength得到的是integer object不是int值

游戏名称:魔兽
材质:ABS 规格:大约100cm 包装:锦盒包装
产品介绍:复合材料通过高精密磨具烧制而成,结构坚固、有较强的柔韧性 不易变形、不易退色、仿真度大于或等于98%。是网游玩家希有的装饰品、艺术品和表演道具,也是装饰网吧的最佳选择,更是网游爱好者精神世界的产物。
480元

sbit P1_7=P1^7;//需要先声明各个位引脚,因为C语言不能直接给P1.7幅值
sbit P1_6=P1^6;
sbit P1_5=P1^5;
sbit P1_4=P1^4;
sbit P1_3=P1^3;

pp=pp<<6; //整型变量16位,移动6位,让最高位到D15位置
if(pp&0x8000) P1_7=1; //最高位幅值给P1.7
else P1_7=0;

pp=pp<<1; //左移一位,让次高位到最高位位置
if(pp&0x8000) P1_6=1; //次高位赋值给P1.6
else P1_6=0;

pp=pp<<1; //左移一位,让次高位到最高位位置
if(pp&0x8000) P1_5=1; //依次类推P1_5,P1_4.......
else P1_5=0;

pp=pp<<1; //左移一位,让次高位到最高位位置
if(pp&0x8000) P1_4=1; //依次类推P1_4.......
else P1_4=0;

pp=pp<<1; //左移一位,让次高位到最高位位置
if(pp&0x8000) P1_3=1; //依次类推P1_3.......
else P1_3=0;

}

10位整形变量是0000 00AB CDEF GHIJ。根据你的题目,为了能快速处理,可以这样:
先右移2位变成:0000 0000 ABCD EFGH
这时取低字节,即ABCD EFGH
屏蔽掉低三位,即ABCD E000,将其赋值到P1口即可,所以程序这样写(假设变量为x)
P1=(x>>2)&0xF8;
这样完成了高5位的输出。
低于低5位的输出,则将变量左移3位,即000A BCDE FGHI J000,然后取低字节(FGHI J000)输出到P1即可,所以程序是:
P1=(x<<3)&0xF8;

说明:PP是一个10位的二进制数,说是是双字节的。
void MoveBit(void){
unsigned int pp=0x0355;//xxxx-xx11-0101-0101
unsigned char high_5bits;//高5位
unsigned char low_5bits;//低5位
unsigned char temp=0;
high_5bits=(unsigned char)(pp>>2);//取高5位:xxxx-x000
low_5bits=(unsigned char)pp;//取低5位:000x-xxxx
//先送高5位
temp=P1;
temp|=high_5bits&0xF8;
P1=temp;
//注:此地方用户需要加入延时或其它处理。

//后送低5位
temp=P1;
temp|=low_5bits&0x1F;
P1=temp;
}

此函数可以在KEIL/IAR/VC所有C编译环境都能实现。

P1=(10位二进制数>>2)&0x00F0;//将高5位赋给P1
P1=10位二进制数&0x000F;//将低5位赋给P1

其中0x00F0的长度根据你单片机整型变量的长度可以适当修改

  • 单片机灯的移位问题?
    答:这种问题最好独立解决!这个很简单的程序,你要是想不出来 可以用KEIL仿真看看他们的数值变化,在想 不出来,咱们可以自己画啊,自己仔细写出每一步值的变话!初值temp=0xfe;也就是二进制的1111 1110 a=temp>>i;然后 temp右移1位也就是 0111 1111 b=temp<<(8-i);第一次i=0哦,temp左移动7...
  • 单片机数组移位问题
    答:用个for循环,对每个都用<<运算符
  • 单片机程序中数组中的值怎么实现位左(右)移?(C语言)
    答:data = nBitmapDot[i] >> 1; // nBitmap[i]右移一个二进制位,与 data = nBitmapDot[i] / 2; 同效。data = nBitmapDot[i] << 1; // nBitmap[i]左移一个二进制位,与 data = nBitmapDot[i] * 2; 同效。要说明的是移位操作(<< 或 >>)效率更高。
  • 单片机用矩阵键盘控制数码管怎么数据移位
    答:弄个数组存放输入的密码,每次输入则将数组做移位,然后每次显示都把数组中所有的字符显示一次就达到移位显示了..参考程序发给你了
  • 单片机 移位操作 右移 C语言
    答:C51系列单片机中_crol_指令是循环左移函数,_cror_是循环右移函数,这是51中特有的指令,别的类型单片机就不能使用了。易于程序的移植和通用性考虑个人比较推荐用<< 左移, 右移>>这两个C中的移位符号。
  • 单片机 移位相加问题
    答:8位单片机,输出有8位,设为1010 1100,高四位右移四位前面要补4个0是0000 1010,再与低四位相加就是00001010+00001100,结果是高四位为0,低四位的值是原来高四位与低四位相加的值。
  • 51单片机LCD1602字符平移的一个简单问题
    答:根据我的理解,移位方式设定寄存器的D4位的复位状态为1,此时允许移位操作,如果设置为0x07那么,D4被强行置0,就一定没有移位操作了,而后是S/C(D3)、R/L(D2)这两位,复位状态为0、0;此时为默认的光标左移(AC-1操作),这也是常用的工作模式,所以一般初始化时都不进行移位方式的格式化,此...
  • 单片机移位指令 左大环移一位结果是否为原来的二倍
    答:参加移位的8位数字,如果小于 128,左大环移一位,结果就是原来的二倍。因为,8位数字,最大才 255。
  • 如何用单片机实现PLC的移位功能啊?
    答:在单片机和计算机的汇编指令中都有移位指令,对于不同型号单片机,指令形式略有差别,但基本是对字节或字进行移位,当需要多字节或多字进行移位时,需要编段小程序进行。在PLC中,它的核心器件实际也是个单片机,只是它作了个类似操作系统的程序,应用软件可以在这个程序下运行而已。当使用C程序处理移位时,...
  • 问下·TX-51单片机中数码管显示如何移位,比如说我按键1在第6个根数...
    答:其实不存在移位问题,只是一个数的显示而已,按键1该数为1,铵键2该数为11……然后即时将该项数在数码管中显示。给你一个函数,作用时将一个数在第几个数码管中显示。void display(uchar firstbit,uchar Num) //firstbit为要第一位显示数码管,NUM是要显示数的位数 { uchar s;for(s=0;s<...