delphi新手求助,在线等。array of byte 如何转 interger

比如arr:arrayofbytearr[0]中为1arr[1]中为0arr[2]中为0arr[3]中为0(二进制1000)想得到结果:8怎么做?请用delphi的语言…... 比如
arr : array of byte
arr[0] 中为1
arr[1] 中为0
arr[2] 中为0

arr[3] 中为0

(二进制1000)

想得到结果:8

怎么做?
请用delphi的语言…
展开
 我来答
jamesvon1969
2017-12-06
知道答主
回答量:20
采纳率:50%
帮助的人:3.1万
展开全部
IntRec = packed record

case Integer of
0: (Int: Integer);
1: (Bytes: array [0..3] of Byte);
end;
var intValue : IntRec;
intValue.Int := 123123;
intValue.Bytes 就是闹冲你想毁敬要液余歼的。intValue.Bytes[0],intValue.Bytes[1],intValue.Bytes[2],intValue.Bytes[3]
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fs...4@163.com
2013-03-20 · TA获得超过123个赞
知道答主
回答量:252
采纳率:0%
帮助的人:60万
展开全部
b: integer;
b := arr[0] * 8 + arr[1] * 4 + arr[2] * 2 + arr[3] * 1
各种进制转换的薯孙过程你不知宴亏道?就是把它们的值跟他们所代表的的晌手神进制进行权衡运算。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
YiFei_erp19
2013-03-19 · TA获得超过1169个赞
知道小有建树答主
回答量:1584
采纳率:40%
帮助的人:457万
展开全部
delphi 可以内嵌汇编的 :-)

begin
asm
mov ecx,0
move eax,arr[0]
shl eax,3
xor ecx,eax
move eax,arr[1]
shl eax,2
xor ecx,eax
move eax,arr[2]
shl eax,1
xor ecx,eax
move eax,arr[0]
xor ecx,eax

mov Result, ecx

end;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式