using static System.Console; using System.Text; using System.Diagnostics; public class Program { public static void Main() { var sw = new Stopwatch(); sw.Start(); for (var i = 0; i < 1000; i++) ASCII_binary("teste"); sw.Stop(); WriteLine(sw.ElapsedTicks); sw.Restart(); for (var i = 0; i < 1000; i++) ASCII_binaryIneficiente("teste"); sw.Stop(); WriteLine(sw.ElapsedTicks); } public static string ASCII_binary(string texto) { var converted = ""; byte[] byteArray = Encoding.ASCII.GetBytes(texto); for (var i = 0; i < byteArray.Length; i++) { for (var j = 0; j < 8; j++) { converted += (byteArray[i] & 0x80) > 0 ? "1" : "0"; byteArray[i] <<= 1; } } return converted; } public static string ASCII_binaryIneficiente(string texto) { var converted = ""; byte[] byteArray = Encoding.ASCII.GetBytes(texto); for (var i = 0; i < byteArray.Length; i++) { for (var j = 0; j < 8; j++) { converted += (byteArray[i]) > 127 ? "1" : "0"; byteArray[i] *= 2; } } return converted; } } //https://pt.stackoverflow.com/q/101050/101