如何写一个函数让任何一个正数算术右移8位呢。。

hxy2003 2003-09-03 04:55:35
如何写一个函数让任何一个正数算术右移8位呢。。
...全文
182 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gelim 2003-09-04
  • 打赏
  • 举报
回复
将dim a 改成 dim a() as string也 可以
Gelim 2003-09-04
  • 打赏
  • 举报
回复
正整数的右移8位:

dim a as long

a=fix(a/2^8)

楼上 northwolves(野性的呼唤) 的二进制转成十进制应该成为楼主的首选,很好!
hxy2003 2003-09-04
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/2218/2218189.xml?temp=.2579615

高分求解:如何把任意二制制数转成一个两位十六进制数
northwolves 2003-09-03
  • 打赏
  • 举报
回复
Function bindec(x As String) As Double ' 2 TO 10
Dim a
a = Split(x, ".")
y = 0
For i = 1 To Len(a(0))
y = y + Mid(a(0), i, 1) * 2 ^ (Len(a(0)) - i)
Next
For i = 1 To Len(a(1))
y = y + Mid(a(1), i, 1) / 2 ^ i
Next
bindec = y
End Function
viena 2003-09-03
  • 打赏
  • 举报
回复
二进制转十进制
Public Function Dec(ByVal n As String) As Double
Dim i As Long, j As Long, dot As Long, prefix As Long
prefix = Sgn(n)
If prefix = -1 Then n = Mid(n, 2)
dot = InStr(n, ".")
If dot = 0 Then
dot = Len(n) - 1
Else
n = Left(n, dot - 1) & Mid(n, dot + 1)
dot = dot - 2
End If
For i = dot To dot - Len(n) + 1 Step -1
j = j + 1
If Mid(n, j, 1) <> 0 Then Dec = Dec + 2 ^ i
Next
Dec = Dec * prefix
End Function
hxy2003 2003-09-03
  • 打赏
  • 举报
回复
另外,二进制转十进制要如何转呢。。。
谁有没有这样的函数啊。多谢。。
viena 2003-09-03
  • 打赏
  • 举报
回复
任何一个正数不一定能右移,如果是浮点数呢?
射天狼 2003-09-03
  • 打赏
  • 举报
回复
dim i as long

i = i /2^8 '右移八位
i = i * 2^8 '左移八位
jlum99 2003-09-03
  • 打赏
  • 举报
回复
Dim lngTemp As Long
lngTemp =(lngTemp And &HFF) / &H100&
Fengq 2003-09-03
  • 打赏
  • 举报
回复
右移8位不是除256吗?

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧