将字符串“123456789”中所有字节求和,取得最低8位,并转换成字符。

解决方案 »

  1.   

    和 = x
    低8位 string s
    for I := 1 to 8 do
    begin
      if  (x and $01) =1 then s:= '1' +s else  s:='0'+s;
      x:= x shr  1;
    end;
      

  2.   

    多谢vividw,能不能解释一下,尤其是$01表示什么意思?
      

  3.   

    看下语法书的 运算符 -->逻辑(按位)运算符shr  按位右移  
    and  按位与
      

  4.   

    这个我知道,但是 if  (x and $01) =1 then中(x与$01) =1是什么意思?
    还有,这个方法最终是返回一个字节长度的字符,那你的方法最终是返回x还是s?
    谢谢。
      

  5.   

    (x and $01)  取最右1位 判断是否是 1 记入 s
      

  6.   

    汗...每次取最右一位 取完 shr一位 就是下一位了.
    你可以找整数试下..
      

  7.   

    和 = x
     x:= x and $ff
      

  8.   

    字符指的 什么 asi码?
    chr(x and $ff)
      

  9.   

    我的题目你可能没看懂:求和,取得“和”的最低8位,再将最低8位(ascii码)还原转换成相应的字符。
      

  10.   

    将字符串“123456789”中所有字节求和 怎么求?
    chr(x and $ff)
     直接得到 低 8位的aic码...
    还有不明白的自己改下吧