Feedback

C# - Dezimal in Binär umwandeln

Veröffentlicht von am 16.11.2009
(2 Bewertungen)
Einfache Methode die einen Bytewert in einen 8-Bit-String umwandelt.
GFU-Schulungen  [Anzeige]

ASP.NET Core - Der Einstieg

In nur 3 Tagen lernen Sie, wie man mit ASP.NET Core und den Technologien MVC, Entity Framework, WebAPI und Razor professionelle Web-Anwendungs-Architekturen aufbaut. Diese Schulung ist der perfekte Einstieg, um datengetriebene und präsentations-orientierte Applikationen auf Basis der ASP.NET Core Plattform zu erstellen.

Visual Studio Team Foundation Server 2017/2015 (TFS) für Entwickler - Kompakt

Nach Teilnahme an dieser Schulung kennen Sie alle wesentlichen Funktionen des TFS für Entwickler. Sie setzen Software-Entwicklung mit dem Visual Studio Team Foundation Server erfolgreich um.

private byte[] bitwert = { 128, 64, 32, 16, 8, 4, 2, 1 };
private byte[] bits = new byte[8];
public string dec2bin(byte Bytewert)
{
    string bitstring = string.Empty; for (int Counter = 0; Counter < 8; Counter++)
    {
        if (Bytewert >= bitwert[Counter])
        {
            bits[Counter] = 1; Bytewert -= bitwert[Counter];
        }
        bitstring += Convert.ToString(bits[Counter]);
    }
    return bitstring;
}

2 Kommentare zum Snippet

Thomas Söhne schrieb am 17.11.2009:
Hi NB01,

ich hab das mal so gemacht:
public string dec2bin(long dezimalzahl, int bitanzahl)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < bitanzahl; dezimalzahl = dezimalzahl >> 1,i++)
sb.Insert(0, dezimalzahl & 1);
return sb.ToString();
}

Damit ist man nicht auf ein Byte beschränkt und vermutlich läuft das bitshiften schneller als das -=.

Gruß,
Thomas
Martin Hey schrieb am 19.11.2009:
Hi zusammen,

warum eigentlich so kompliziert, das Framework hat doch genau diese Funktionalität schon?
string bitstring = Convert.ToString(bytewert, 2).PadLeft(8,'0');


Grüße
Martin
 

Logge dich ein, um hier zu kommentieren!