1.位是二进制位(值域:0,1),每个字节有8个二进制位(从右至左存放),32位就是4个字节。
------------------------------------------
|0 |1 |0 |…………| 1 | ………………| 0 |
-------------------------------------------
第32位 第16位 第一位2.在VB中long是32位的,integer是16位的。3.构造:高16位通过移位实现,向左移16位(每向左移一位,数就增在两倍),即乘2的16次方;然后再加上低16位的数(此数与 &hFFFF 取与运算 ,保证它的高16位为0)即可:4.和一般整数没什么区别。'从两个integer生成32位:
dim A as Long '32位数据
dim B as integer '高16位
dim C as Integer '低16位 b = 255
c = 255
A = CLng(b)*2^16 + c '因为C本身就是16位的,所以不用与&HFFFF与运算''''''''''''''''''''''''''''''''''''''''''''''''''''
'由Long 生成32位
dim A as Long '32位数据
dim B as Long '高16位
dim C as Long '低16位 b = 255
c = 255
A = b*2^16 + (c AND &HFFFF) '因为C本身就是32位的,所以要与&HFFFF与运算
------------------------------------------
|0 |1 |0 |…………| 1 | ………………| 0 |
-------------------------------------------
第32位 第16位 第一位2.在VB中long是32位的,integer是16位的。3.构造:高16位通过移位实现,向左移16位(每向左移一位,数就增在两倍),即乘2的16次方;然后再加上低16位的数(此数与 &hFFFF 取与运算 ,保证它的高16位为0)即可:4.和一般整数没什么区别。'从两个integer生成32位:
dim A as Long '32位数据
dim B as integer '高16位
dim C as Integer '低16位 b = 255
c = 255
A = CLng(b)*2^16 + c '因为C本身就是16位的,所以不用与&HFFFF与运算''''''''''''''''''''''''''''''''''''''''''''''''''''
'由Long 生成32位
dim A as Long '32位数据
dim B as Long '高16位
dim C as Long '低16位 b = 255
c = 255
A = b*2^16 + (c AND &HFFFF) '因为C本身就是32位的,所以要与&HFFFF与运算
例如:在VB中获取音量大小的到-234000000或176000000,这样两个数,怎样将它们转换成一般的整形或长整形呢?也就是说32位整数怎样转换成一般数?
你上面举的例子是把256转换成32位整数,还是把255转换?转换后的变量A就可以直接
带入API函数使用了吗?