Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bit Wert berechnen

70 views
Skip to first unread message

Christian Gafert

unread,
Mar 9, 2003, 5:59:31 AM3/9/03
to
Hallo NG,

ich möchte aus einer Zahl einen Bitwert berechnen, habe aber keine Idee,
wie ich dies anfangen soll.

Als Beispiel

010110 hat den Bitwert 22
010111 hat den Bitwert 23


mit dem Taschenrechner brauche ich nur die Anzeigeweise von binär auf
decimal ändern, aber das möchte ich für ca. 5000 Werte nicht per Hand
erledigen.

Eigentlich müsste es sich um ein bestimmtes Zahlenformat handeln, ich
komme alleine aber nicht weiter.


Vielen Dank für Eure Hilfe,
Christian Gafert

Barbara Karli

unread,
Mar 9, 2003, 6:09:47 AM3/9/03
to
Hallo Christian

>ich möchte aus einer Zahl einen Bitwert berechnen, habe aber keine Idee,
>wie ich dies anfangen soll.

>010110 hat den Bitwert 22


>010111 hat den Bitwert 23

Du brauchst kein Zahlenformat, sondern eine Funktion:

=BinInDez(10110)

oder: in A2: 10110
in B2: =BinInDez(A2)
Schoenen Sonntag noch!
-
Liebe Gruesse
Barbara

Hajo

unread,
Mar 9, 2003, 6:09:20 AM3/9/03
to
Hallo Christian

schaue hier
http://www.excelformeln.de/formeln.html?welcher=113

Gruß Hajo

"Christian Gafert" <ne...@gafert.net> schrieb im Newsbeitrag
news:Oc#w8ri5C...@TK2MSFTNGP12.phx.gbl...

Bernd Plumhoff

unread,
Mar 9, 2003, 6:58:15 AM3/9/03
to

"Christian Gafert" <ne...@gafert.net> schrieb im Newsbeitrag
news:Oc#w8ri5C...@TK2MSFTNGP12.phx.gbl...
> Hallo NG,
>
> ich möchte aus einer Zahl einen Bitwert berechnen, habe aber keine Idee,
> wie ich dies anfangen soll.

Wie groß können Deine Binärzahlen werden? Die folgende Funktion schafft 30
Stellen (Binärzahl ist als String dargestellt), also maximal die Dezimalzahl
1.073.741.823

Viele Grüße
Bernd Plumhoff
--
Keine Mails, bitte.

Public Function hugebin2dec(binsrc As String) As Long

Dim tempadd As Long

hugebin2dec = 0
tempadd = 1

If Len(binsrc) > 30 Then
hugebin2dec = 1 / 0
Exit Function
End If

Do While Len(binsrc) > 0

Select Case Right(binsrc, 1)

Case 0:
Case 1: hugebin2dec = hugebin2dec + tempadd
Case Else: hugebin2dec = 1 / 0
Exit Function

End Select

tempadd = tempadd * 2
binsrc = Left(binsrc, Len(binsrc) - 1)

Loop

End Function


0 new messages