Преобразовать 8-битное число в бинарный вид строки - C#
Формулировка задачи:
Доброго времени суток!
Имеется задача, преобразовать 8-битное число в бинарный вид строки:
Проблема в том, что нули, в случае если строка tempstr<8 не добавляются до конца, т.е. если например tempstr="101", то после цикла for я не получаю tempstr="10100000". Как решить эту проблему?
Int16 temp = Convert.ToInt16(str); //входное число преобразуем в строку
String tempstr = Convert.ToString(temp, 2); //форматируем строку, превращая число в бинарник
for (int i = 0; i < (9 - tempstr.Length); i++) //если длина строки меньше 8, добавляем ещё нули
tempstr += "0";Решение задачи: «Преобразовать 8-битное число в бинарный вид строки»
textual
Листинг программы
static string ToBin(byte number)
{
StringBuilder sb = new StringBuilder("00000000");
int index = sb.Length - 1;
while (number > 0)
{
sb[index--] = (number & 1) == 0 ? '0' : '1';
number >>= 1;
}
return sb.ToString();
}