如何能取一个字节的前6位和另一个字节的前2位结合为一个新的字节??
是不是:
var
char v,e,sv=e&0xfe|s&2*2>>2

解决方案 »

  1.   

    v:=(e and $fc) + (s and $C0) shr 6;
    或者
    v:=(e and $fc) shr 2 + (s and $C0);
      

  2.   

    $fc和$C0这两个是什么意思????可以解释一下吗?我想是16进制的数,但不太明白!!
    可以给出一些相关资料吗?关于16进制表示的
      

  3.   

    Var
     A, B, C: Char;
     I, K : Bype;
    Begin
      I := Ord(A);
      K := Ord(B);
      I := I And $FD;  //去掉后2位.
      K := I And $03;  //去掉前6位.
      C := Char(I+K);
    End;//这是Delphi的代码.如果你对汇编代码感兴趣,到时我再贴出来.速度要比这个快上好几倍.
      

  4.   

    $fc和$C0 $FD $03这些到底代表什么????是不是代表第几位,比如说I := I And $FD中的$FD就代表前6位?不知道是不是??还请指点,如果是最好能把1到8的相关代表给出来,让我研究研究
    还有,Delphi如何和汇编连用?
      

  5.   

    估计你要好好研究一下二进制以及AND与 OR 或等按位操作