VB编程序实现十进制数转换成2、8、16进制数.docx

VB编程序实现十进制数转换成2、8、16进制数.docx

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

VB编程序实现十进制数转换成2、8、16进制数

十进制转二进制

PublicFunctionDECtoBIN(DecAsLong)AsStringDECtoBIN=

DoWhileDec0

DECtoBIN=DecMod2DECtoBINDec=Dec\2

LoopEndFunction

十进制转八进制:

VB自带函数:Oct(num)

十进制转十六进制:

VB自带函数:hex(num)

转换成十六进制Hex()

如:10(十进制):Hex(10)=A转换成8进制Oct()

如:10(十进制):Oct(10)=12转换成2进制,使用下面的方法

采用连除2取余数,将一个十进制数转换为二进制数

DimDecAsInteger输入一个十进制数DimBinAsString转换为二进制表示DimresAsInteger

DimiAsInteger

Dec=Val(InputBox(x=))Form1.Print十进制数:;DecDo

res=DecMod2求出除以2的余数

Bin=resBinDec=Dec\2

LoopWhileDec0

Form1.Print转换为二进制数为:;Bin

PrivateSubCommand1_Click()Printbin(Text1.Text)

EndSub

Functionbin(nAsLong)AsStringDoUntiln=0

bin=(nMod2)binn=n\2

Loop

EndFunction

十六进制:Hex(number)或使用H前缀八进制:Oct(number)或使用O前缀

二、八、十六进制转为十进制:

参数sdate为要进行转换的数,stype为此数的类型。

如要将十六进制的7b转为十进制:msgboxOtherToShi(7b,16)

PrivateFunctionOtherToShi(ByValSdateAsString,ByValStypeAsLong)AsStringDimAAsString,KAsLong,PAsLong

Iftrim(sdate)=thenmsgbox请输入要转换的数!:Exitfunction

OnErrorGoToExitsubP=Len(Sdate)

SelectCaseStype

Case2

ForK=1ToP

IfMid(Sdate,K,1)1ThenGoToExitsub

NextCase8

IfIsNumeric(Sdate)=FalseThenGoToExitsubSdate=Round(Sdate)

p=len(sdate)Case16

ForK=1ToP

A=Asc(LCase(Mid(Sdate,K,1)))

IfA48Or(A49AndA97)OrA102ThenGoToExitsub

Next

CaseElse按你说的操作,此句好象可免

MsgBox指定转换的类型不正确,请重新输入!:ExitFunctionEndSelect

K=0

DoWhileKP

K=K+1

A=Mid(Sdate,K,1)IfStype=16Then

SelectCaseLCase(A)Casea

A=10

Caseb

A=11

CasecA=12

CasedA=13

CaseeA=14

CasefA=15

EndSelectEndIf

OtherToShi=LTrim(Str(Val(OtherToShi)+Val(A)*Stype^(P-K)))Loop

ExitFunctionExitsub:

MsgBox要转化为Stype进制的数据不合法,请重新输入!

EndFunction

十进制转为二、八、十六进制:

用法与上类似

PrivateFunctionShiToOther(ByValSdateAsString,ByValStypeAsLong)AsStringDimSAsString

Iftrim(sdate)=thenmsgbox请输入要转换的数!:Exitfunction

IfIsNumeric(Sdate)=FalseThenGoToEx

文档评论(0)

hao187 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档