Suponiendo que usted está tratando a los clasificadores como cajas negras y no desea acceder a los internos de los clasificadores (una buena cosa que hacer cuando son seres humanos) puede utilizar el teorema Bayes039 para convertir sus decisiones en una probabilidad para las etiquetas. Dada una instancia de datos para la cual tiene varios votos de etiqueta, puede considerar sus votos particulares como un evento de quotvoting. Por ejemplo, si tiene tres clasificadores y todos ellos votan etiqueta quotAquot, entonces el evento de votación es matemática (A, A, A) / math. El número de eventos de votación para los clasificadores mathC / math asignando dos etiquetas es entonces math2C / math en la mayoría de los casos. Después de haber observado el evento de votación mathvi / math de los clasificadores, tomo su pregunta para significar cuál es el valor de Eso es, ¿cuál es la probabilidad de que la etiqueta correcta para la instancia de datos es, de hecho, A. By Bayes039 theorem this should equal Así que la respuesta depende de la prevalencia de las dos etiquetas, mathP (A) / math y mathP (B) / math (que debe sumar a uno), y en las probabilidades de reconocimiento condicional para los clasificadores que producen un evento de votación mathvi / math cuando Se les presenta una instancia de datos cuya etiqueta verdadera es A o B. Si conoce las prevalencias y las probabilidades de reconocimiento condicional de su conjunto de entrenamiento y espera que el flujo de datos exhiba las mismas características que sus datos de entrenamiento, todos son conjunto. Si no, entonces entra en el ámbito de los algoritmos de inferencia sin supervisión - ¿cómo puedo inferir las prevalencias y las probabilidades de reconocimiento condicional dado sólo la frecuencia de los eventos de votación cuando no tengo verdad en el suelo para las etiquetas correctas Este es el trabajo que hacemos en dataengines . 938 Vistas middot Ver Upvotes middot No es para reproducción middot Respuesta solicitada por Walker LeeHow para convertir de decimal a binario Configurar el problema. Para este ejemplo, permite convertir el número decimal 156 10 en binario. Escriba el número decimal como el dividendo dentro de un símbolo de división de cabeza invertida. Escriba la base del sistema de destino (en nuestro caso, 2 para binario) como el divisor fuera de la curva del símbolo de división. Este método es mucho más fácil de entender cuando se visualiza en papel, y es mucho más fácil para los principiantes, ya que se basa sólo en la división por dos. Para evitar confusiones antes y después de la conversión, escriba el número del sistema base con el que está trabajando como un subíndice de cada número. En este caso, el número decimal tendrá un subíndice de 10 y el equivalente binario tendrá un subíndice de 2. ¿Puede poner wikiHow en la lista blanca para su bloqueador de anuncios wikiHow se basa en dinero del anuncio para darle nuestras guías gratuitas de cómo hacerlo . Aprender cómo . Dividir. Escriba la respuesta entera (cociente) bajo el símbolo de división larga, y escriba el resto (0 o 1) a la derecha del dividendo. 2 Dado que estamos dividiendo por 2, cuando el dividendo es incluso el resto binario será 0, y cuando el dividendo es extraño el resto binario será 1. Continúe dividiendo hasta llegar a 0. Continúe hacia abajo, dividiendo cada nuevo cociente por dos Y escribiendo los restos a la derecha de cada dividendo. Detenga cuando el cociente es 0. Escriba el nuevo número binario. Comenzando con el resto del fondo, lea la secuencia de los restos hacia arriba a la parte superior. Para este ejemplo, debe tener 10011100. Éste es el equivalente binario del número decimal 156. O, escrito con subíndices de base: 156 10 10011100 2 Este método se puede modificar para convertir de decimal a cualquier base. El divisor es 2 porque el destino deseado es base 2 (binario). Si el destino deseado es una base diferente, reemplace el 2 del método por la base deseada. Por ejemplo, si el destino deseado es base 9, reemplace el 2 por 9. El resultado final estará en la base deseada. Método dos de dos: Poderes descendentes de dos y resta Editar Comience por hacer un gráfico. Enumere las potencias de dos en una tabla de base 2 de derecha a izquierda. Comience en 2 0. evaluándolo como 1. Incremente el exponente por uno para cada potencia. Haga la lista hasta que haya alcanzado un número muy cercano al número del sistema decimal que está empezando. Para este ejemplo, permite convertir el número decimal 156 10 en binario. Busque la mayor potencia de 2. Elija el número más grande que encajará en el número que está convirtiendo. 128 es el mayor poder de dos que caben en 156, así que escriba un 1 debajo de este cuadro en su gráfico para el dígito binario más a la izquierda. Luego, resta 128 de tu número inicial. Ahora tiene 28. Pasar a la siguiente potencia inferior de dos. Utilizando su nuevo número (28), desplácese hacia abajo en el gráfico indicando cuántas veces cada potencia de 2 puede caber en su dividendo. 64 no entra en 28, así que escriba un 0 debajo de ese cuadro para el siguiente dígito binario a la derecha. Continuar hasta llegar a un número que puede entrar en 28. Reste cada número sucesivo que puede caber, y marcar con un 1. 16 puede caber en 28, por lo que va a escribir un 1 debajo de su cuadro y restan 16 de 28. Ahora Tiene 12. 8 va en 12, así que escriba una caja de 1 bajo 8s y restétela de 12. Ahora tiene 4. Continúe hasta llegar al final de su carta. Recuerde marcar un 1 debajo de cada número que va en su nuevo número, y un 0 debajo de los que no. Escribe la respuesta binaria. El número será exactamente el mismo de izquierda a derecha como el 1s y 0s debajo de su gráfico. Debe tener 10011100. Éste es el equivalente binario del número decimal 156. O, escrito con subíndices de base: 156 10 10011100 2. La repetición de este método resultará en la memorización de las potencias de dos, que le permitirá saltar Paso 1. Cómo convertir de binario a decimal Cómo convertir de decimal a hexadecimal Cómo decodificar números binarios Cómo convertir binario a número octal Cómo Convertir millilitros (ml) a gramos (g) Cómo convertir hexadecimal a binario o decimal Cómo calcular BTU por pie cuadrado Cómo convertir binario a hexadecimal Cómo convertir kilogramos a kilogramos Cómo convertir de decimal a octal3.8. Conversión de números decimales en números binarios En su estudio de la informática, probablemente haya estado expuesto de una manera u otra a la idea de un número binario. La representación binaria es importante en la informática ya que todos los valores almacenados dentro de una computadora existen como una cadena de dígitos binarios, una cadena de 0s y 1s. Sin la capacidad de convertir entre las representaciones comunes y los números binarios, tendríamos que interactuar con las computadoras de maneras muy incómodas. Los valores enteros son elementos de datos comunes. Se utilizan en programas informáticos y computación todo el tiempo. El número decimal (233) y su correspondiente equivalente binario (11101001) se interpretan respectivamente como (2 x 10 x 3 x 10) (1 x 2 1 x 2 1 x 2 0 x 2 1times2 0times2 0times2 1times2) Pero cómo podemos convertir fácilmente valores enteros en números binarios La respuesta es un algoritmo llamado Divide by 2 que utiliza una pila para realizar un seguimiento de los dígitos para el resultado binario. El algoritmo de Divide by 2 supone que comenzamos con un entero mayor que 0. Una simple iteración divide continuamente el número decimal por 2 y mantiene un seguimiento del resto. La primera división por 2 da la información sobre si el valor es par o impar. Un valor par tendrá un resto de 0. Tendrá el dígito 0 en el lugar. Un valor impar tendrá un resto de 1 y tendrá el dígito 1 en el lugar. Pensamos en construir nuestro número binario como una secuencia de dígitos, el primer resto que calculamos será el último dígito de la secuencia. Como se muestra en la Figura 5. Vemos de nuevo la propiedad de inversión que indica que es probable que una pila sea la estructura de datos apropiada para resolver el problema. Figura 5: Conversión de decimal a binario El código de Python en ActiveCode 1 implementa el algoritmo Divide by 2. La función divideBy2 toma un argumento que es un número decimal y lo divide repetidamente en 2. La línea 7 utiliza el operador modulo incorporado, para extraer el resto y la línea 8 luego lo empuja en la pila. Después de que el proceso de división llegue a 0, se construirá una cadena binaria en las líneas 11-13. La línea 11 crea una cadena vacía. Los dígitos binarios se extraen de la pila uno a la vez y se añaden al extremo derecho de la cadena. A continuación, se devuelve la cadena binaria. El algoritmo para la conversión binaria se puede ampliar fácilmente para realizar la conversión para cualquier base. En informática es común utilizar una serie de codificaciones diferentes. Los más comunes son binarios, octales (base 8) y hexadecimales (base 16). El número decimal (233) y sus correspondientes equivalentes octales y hexadecimales (351) y (E9) se interpretan como (3x8 5x8 1x8). La función divideBy2 puede modificarse para aceptar no sólo un valor decimal sino también una base para la conversión deseada. La idea de dividir por 2 simplemente se reemplaza con una división más general por base. Una nueva función llamada baseConverter. Mostrado en ActiveCode 2. toma un número decimal y cualquier base entre 2 y 16 como parámetros. Los restos todavía se empujan sobre la pila hasta que el valor que se convierte se convierte en 0. La misma técnica de construcción de hilo de izquierda a derecha puede usarse con un ligero cambio. Los números de base 2 a base 10 necesitan un máximo de 10 dígitos, por lo que los caracteres típicos de dígito 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9 funcionan bien. El problema viene cuando vamos más allá de la base 10. Ya no podemos simplemente usar los restos, ya que ellos mismos están representados como números decimales de dos dígitos. En su lugar, tenemos que crear un conjunto de dígitos que se pueden utilizar para representar los restos más allá de 9. Una solución a este problema es ampliar el conjunto de dígitos para incluir algunos caracteres del alfabeto. Por ejemplo, hexadecimal utiliza los diez dígitos decimales junto con los seis primeros caracteres del alfabeto para los 16 dígitos. Para implementar esto, se crea una cadena de dígitos (línea 4 en el Listado 6) que almacena los dígitos en sus posiciones correspondientes. 0 está en la posición 0, 1 está en la posición 1, A está en la posición 10, B está en la posición 11, y así sucesivamente. Cuando se elimina un resto de la pila, se puede utilizar para indexar en la cadena de dígitos y el dígito resultante correcto puede añadirse a la respuesta. Por ejemplo, si el resto 13 se elimina de la pila, el dígito D se añade a la cadena resultante. Cuál es el valor de 25 expresado como un número octal. Incorrecto b31b ¿Cuál es el valor de 256 expresado como un número hexadecimal b100b Cuál es el valor de 26 expresado en la base 26. Puede que tenga que modificar la función baseConverter, o simplemente encontrar un patrón en la conversión de bases. B10b No hay tipos de video compatiblesCAST y CONVERT (Transact-SQL) tipo de datos Es el tipo de datos de destino. Esto incluye xml. Bigint Y sqlvariant. No se pueden utilizar tipos de datos de alias. Length Es un entero opcional que especifica la longitud del tipo de datos de destino. El valor predeterminado es 30. style Es una expresión de número entero que especifica cómo convertir la función CONVERT. Si style es NULL, se devuelve NULL. El rango está determinado por el tipo de datos. Para obtener más información, consulte la sección Comentarios. Devuelve la expresión traducida al tipo de datos. Cuando la expresión es un tipo de datos de fecha o hora, el estilo puede ser uno de los valores que se muestran en la siguiente tabla. Otros valores se procesan como 0. A partir de SQL Server 2012, los únicos estilos que se admiten al convertir desde tipos de fecha y hora a datetimeoffset son 0 o 1. Todos los demás estilos de conversión devuelven error 9809. SQL Server admite el formato de fecha en estilo árabe Utilizando el algoritmo kuwaití. Sin siglo (yy) (1) Con el siglo (aaaa) Por defecto para datetime y smalldatetime lunes dd aaaa hh: miAM (o PM) 106 dd mon aaaa 107 Mon dd, ayyyy dd dd aaaa hh: mi: ss: mmmAM ) Europa por defecto milisegundos dd mon aaaa hh: mi: ss: mmm (24h) ODBC canónico (con milisegundos) por defecto para el tiempo, la fecha, la fecha y la fecha y la fecha y la fecha yyyy-mm-ddThh: mi: ss. mmm Nota: Cuando el valor de milisegundos (mmm) es 0, el valor milisegundo no se muestra. Por ejemplo, el valor 2012-11-07T18: 26: 20.000 se muestra como 2012-11-07T18: 26: 20. ISO8601 con zona horaria Z. aaaa-mm-ddThh: mi: ss. mmmZ (sin espacios) Nota: Cuando el valor de milisegundos (mmm) es 0, no se muestra el valor de milisegundos. Por ejemplo, el valor 2012-11-07T18: 26: 20.000 se muestra como 2012-11-07T18: 26: 20. Dd mon aaaa hh: mi: ss: mmmAM En este estilo, mon representa una representación multi-token Hijri unicode del nombre de los meses completos. Este valor no se procesará correctamente en una instalación de SSMS predeterminada en los Estados Unidos. 1 Estos valores de estilo devuelven resultados no determinísticos. Incluye todos los estilos (yy) (sin siglo) y un subconjunto de estilos (aaaa) (con el siglo). 3 Ingrese cuando se convierte a salida de fecha y hora cuando se convierte en datos de caracteres. 4 Diseñado para el uso de XML. Para la conversión de datetime o smalldatetime a datos de caracteres, el formato de salida es como se describe en la tabla anterior. 5 Hijri es un sistema de calendario con varias variaciones. SQL Server utiliza el algoritmo kuwaití. De forma predeterminada, SQL Server interpreta años de dos dígitos basado en un año de corte de 2049. Es decir, el año de dos dígitos 49 se interpreta como 2049 y el año de dos dígitos 50 se interpreta como 1950. Muchas aplicaciones de cliente, Basado en objetos de automatización, utilice un año de corte de 2030. SQL Server proporciona la opción de configuración de corte de año de dos dígitos que cambia el año de corte utilizado por SQL Server y permite el tratamiento coherente de fechas. Recomendamos especificar años de cuatro dígitos. 6 Sólo se admite en la conversión de datos de caracteres a datetime o smalldatetime. Cuando los datos de caracteres que representan sólo componentes de fecha o sólo hora se emiten a los tipos de datos datetime o smalldatetime, el componente de tiempo no especificado se establece en 00: 00: 00.000 y el componente de fecha no especificado se establece en 1900-01-01. 7 El indicador de zona horaria opcional, Z, se utiliza para facilitar la asignación de valores de fecha y hora XML que tienen información de zona horaria a valores de fecha y hora de SQL Server que no tienen zona horaria. Z es el indicador de la zona horaria UTC-0. Otras zonas horarias se indican con desplazamiento HH: MM en la dirección o -. Por ejemplo: 2006-12-12T23: 45: 12-08: 00. Cuando convierte a datos de caracteres de smalldatetime. Los estilos que incluyen segundos o milisegundos muestran ceros en estas posiciones. Puede truncar partes de fecha no deseadas cuando convierte valores datetime o smalldatetime utilizando una longitud adecuada de tipo de datos char o varchar. Cuando convierte a datetimeoffset de datos de caracteres con un estilo que incluye un tiempo, se agrega un desplazamiento de zona horaria al resultado. Traduce caracteres ASCII a bytes binarios o bytes binarios a caracteres ASCII. Cada carácter o byte se convierte 1: 1. Si el tipo de datos es un tipo binario, los caracteres 0x se añaden a la izquierda del resultado. Si el tipo de datos es un tipo binario, la expresión debe ser una expresión de carácter. La expresión debe estar compuesta por un número par de dígitos hexadecimales (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, a, b, c. D, e, f). Si el estilo se establece en 1, los caracteres 0x deben ser los dos primeros caracteres de la expresión. Si la expresión contiene un número impar de caracteres o si alguno de los caracteres no es válido se genera un error. Si la longitud de la expresión convertida es mayor que la longitud del tipo de datos, el resultado se truncará correctamente. Los tipos de datos de longitud fija que son mayores que el resultado convertido tendrán ceros agregados a la derecha del resultado. Si el tipo de datos es un tipo de carácter, la expresión debe ser una expresión binaria. Cada carácter binario se convierte en dos caracteres hexadecimales. Si la longitud de la expresión convertida es mayor que la longitud del tipo de datos, se truncará correctamente. Si el tipo de datos es un tipo de carácter de tamaño de arreglo y la longitud del resultado convertido es menor que su longitud del tipo de datos se agregan espacios a la derecha de la expresión convertida para mantener un número par de dígitos hexadecimales. Los caracteres 0x se agregarán a la izquierda del resultado convertido para el estilo 1. Las conversiones implícitas son aquellas que se producen sin especificar la función CAST o CONVERT. Las conversiones explícitas son aquellas conversiones que requieren que se especifique la función CAST o CONVERT. La siguiente ilustración muestra todas las conversiones de tipo de datos explícitas e implícitas permitidas para los tipos de datos suministrados por el sistema de SQL Server. Estos incluyen xml. Bigint Y sqlvariant. No hay ninguna conversión implícita en la asignación desde el tipo de datos sqlvariant, pero hay una conversión implícita a sqlvariant. Este gráfico está disponible como un archivo PDF descargable en el Centro de descarga de Microsoft. Cuando convierte entre datetimeoffset y los tipos de caracteres char. Varchar Nchar Y nvarchar la parte de offset de zona horaria convertida siempre debe ser dos dígitos para HH y MM, por ejemplo, -08: 00. Dado que los datos Unicode siempre utilizan un número par de bytes, tenga cuidado al convertir binario o varbinary a o desde tipos de datos compatibles con Unicode. Por ejemplo, la siguiente conversión no devuelve un valor hexadecimal de 41 devuelve 4100: SELECT CAST (CAST (0x41 AS nvarchar) AS varbinary). Los tipos de datos de gran valor muestran el mismo comportamiento de conversión implícita y explícita que sus equivalentes más pequeños, específicamente el varchar. Nvarchar y varbinary tipos de datos. Sin embargo, debe considerar las siguientes pautas: La conversión de imagen a varbinary (max) y viceversa es una conversión implícita, así como las conversiones entre texto y varchar (max). Y ntext y nvarchar (max). Conversión de tipos de datos de gran valor, como varchar (max). A un tipo de datos de contraparte más pequeño, como varchar. Es una conversión implícita, pero el truncamiento se producirá si el valor grande es demasiado grande para la longitud especificada del tipo de datos más pequeño. Conversión de varchar. Nvarchar. O varbinary a sus correspondientes tipos de datos de gran valor se lleva a cabo implícitamente. La conversión del tipo de datos sqlvariant a los tipos de datos de gran valor es una conversión explícita. Los tipos de datos de gran valor no se pueden convertir al tipo de datos sqlvariant. Para obtener más información acerca de cómo convertir el tipo de datos xml, vea Crear instancias de datos XML. Cuando explícita o implícitamente emite el tipo de datos xml a una cadena o tipo de datos binarios, el contenido del tipo de datos xml se serializa en función de un conjunto de reglas. Para obtener información acerca de estas reglas, consulte Definir la serialización de datos XML. Para obtener información acerca de cómo convertir de otros tipos de datos al tipo de datos xml, vea Crear instancias de datos XML. La conversión automática de tipo de datos no es compatible con los tipos de datos de texto y de imagen. Puede convertir explícitamente datos de texto en datos de caracteres y datos de imagen en binario o varbinary. Pero la longitud máxima es 8000 bytes. Si intenta una conversión incorrecta como intentar convertir una expresión de carácter que incluye letras a un int. SQL Server devuelve un mensaje de error. Cuando la salida de CAST o CONVERT es una cadena de caracteres, y la entrada es una cadena de caracteres, la salida tiene la misma etiqueta de colación y clasificación que la entrada. Si la entrada no es una cadena de caracteres, la salida tiene la colación predeterminada de la base de datos y una etiqueta de clasificación de coercible-default. Para obtener más información, vea Precedencia de intercalación (Transact-SQL). Para asignar una intercalación diferente a la salida, aplique la cláusula COLLATE a la expresión de resultado de la función CAST o CONVERT. Por ejemplo: SELECT CAST (abc AS varchar (5)) COLLATE FrenchCSAS Cuando convierte caracteres o expresiones binarias (char. Nchar, nvarchar, varchar, binario o varbinary) a una expresión de un tipo de datos diferente, los datos pueden ser truncados, Sólo se muestra parcialmente, o se devuelve un error porque el resultado es demasiado corto para mostrarlo. Conversiones a char. Varchar Nchar Nvarchar. Binario Y varbinary están truncados, excepto para las conversiones mostradas en la siguiente tabla. Por ejemplo, el resultado de la siguiente conversión es 10: SELECT CAST (10.6496 AS int) Cuando convierte tipos de datos en los que el tipo de datos de destino tiene menos decimales que el tipo de datos de origen, el valor se redondea. Por ejemplo, el resultado de la conversión siguiente es 10.3497: SELECT CAST (10.3496847 AS money) SQL Server devuelve un mensaje de error cuando no es char. Nchar Varchar O los datos nvarchar se convierten en int. Flotar Numérico O decimal. SQL Server también devuelve un error cuando se convierte una cadena vacía () en numérico o decimal. En la tabla siguiente se enumeran los estilos para los que la conversión cadena-fecha-hora es no determinística. Todos los estilos por debajo de 100 1 1 Con la excepción de los estilos 20 y 21 A partir de SQL Server 2012, si utiliza agrupaciones de caracteres suplementarios (SC), una operación CAST desde nchar o nvarchar a un tipo nchar o nvarchar de menor longitud no truncará dentro Un par sustituto trunca antes que el carácter suplementario. Por ejemplo, el siguiente fragmento de código deja x que contiene sólo ab. No hay espacio suficiente para mantener el carácter suplementario. Cuando se utiliza SC collations el comportamiento de CONVERTIR. Es análoga a la de CAST. En versiones anteriores de SQL Server, el estilo predeterminado para las operaciones CAST y CONVERT en los tipos de datos time y datetime2 es 121, excepto cuando se utiliza cualquiera de los tipos en una expresión de columna calculada. Para columnas calculadas, el estilo predeterminado es 0. Este comportamiento afecta a las columnas calculadas cuando se crean, se utilizan en consultas que implican la auto-parametrización o se utilizan en definiciones de restricciones. En el nivel de compatibilidad 110 y superior, el estilo predeterminado para las operaciones CAST y CONVERT en los tipos de datos time y datetime2 es siempre 121. Si su consulta se basa en el comportamiento antiguo, utilice un nivel de compatibilidad inferior a 110 o especifique explícitamente el estilo 0 en la Afectada. Actualizar la base de datos a nivel de compatibilidad 110 y superior no cambiará datos de usuario que se han almacenado en disco. Debe corregir manualmente estos datos según corresponda. Por ejemplo, si utilizó SELECT INTO para crear una tabla a partir de un origen que contenía una expresión de columna calculada descrita anteriormente, los datos (con el estilo 0) se almacenarían en lugar de la propia definición de columna calculada. Tendría que actualizar manualmente estos datos para que coincidan con el estilo 121. A. Usando CAST y CONVERT Cada ejemplo recupera el nombre del producto para aquellos productos que tienen un 3 en el primer dígito de su precio de lista y convierte su ListaPrice en int. B. Uso de CAST con operadores aritméticos El siguiente ejemplo calcula un cálculo de columna única (Computed) dividiendo el total de ventas acumuladas hasta la fecha (SalesYTD) por el porcentaje de comisión (CommissionPCT). Este resultado se convierte en un tipo de datos int después de haber sido redondeado al número entero más cercano. Aquí está el conjunto de resultados. UnconvertedDateTime UsingCast UsingConvertToISO8601 2006-04-18 09: 58: 04.570 Apr 18 2006 9:58 AM 2006-04-18T09: 58: 04.570 (1 row (s) affected) El ejemplo siguiente es aproximadamente lo contrario del ejemplo anterior. El ejemplo muestra una fecha y hora como datos de caracteres, utiliza CAST para cambiar los datos de carácter al tipo de datos datetime y, a continuación, utiliza CONVERT para cambiar los datos de carácter al tipo de datos datetime. Aquí está el conjunto de resultados. UnconvertedText UsingCast UsingConvertFromISO8601 2006-04-25T15: 50: 59.997 2006-04-25 15: 50: 59.997 2006-04-25 15: 50: 59.997 (1 fila (s) afectada) H. Uso de CONVERT con datos binarios y de caracteres Los siguientes ejemplos muestran los resultados de la conversión de datos binarios y de caracteres utilizando diferentes estilos. Aquí está el conjunto de resultados. UnconvertedDateTime UsingCast UsingConvertToISO8601 20/07/2010 1:44:31 PM 2010-07-20 13: 44: 31.5879025 2010-07-20T13: 44: 31.5879025 El siguiente ejemplo es aproximadamente lo contrario del ejemplo anterior. El ejemplo muestra una fecha y hora como datos de caracteres, utiliza CAST para cambiar los datos de carácter al tipo de datos datetime y, a continuación, utiliza CONVERT para cambiar los datos de carácter al tipo de datos datetime. Cómo convertir números de decimal a binario y volver Esto Es un tutorial sobre cómo convertir números de decimal a binario y de binario a decimal. Puedo incluir un atajo hexadecimal muy fácil después. Qué es binario En resumen, binario es un sistema de numeración de base 2 utilizado por sistemas informáticos. En un dígito binario dado, el número puede ser un 0 o un 1. ¿Qué es decimal? En resumen, decimal es el sistema de numeración base 10 que usamos en nuestra vida cotidiana, donde los dígitos pueden oscilar entre 0 y 9. ¿Por qué debería preocuparse Si estás aquí leyendo este tutorial, al menos estás interesado en la informática. Dado que el binario es tan crucial para la computación, es imprescindible que los entusiastas / profesionales de la computación entiendan cómo convertir los números que usamos (decimales) a los números que usan los ordenadores (binarios). Empecemos. Como se mencionó anteriormente, los dígitos binarios (o bits) pueden tener un valor de 1 o 0. Bueno, usted podría preguntar, ¿cómo hacer un número mayor que 1 entonces, si sólo tiene dos posibles valores La respuesta es la misma manera Que hacemos números mayores que 9 (nuestro dígito decimal más grande), agregamos otro valor de lugar. La comprensión de valores de posición es la clave para cualquier sistema de numeración, con binario sin excepción. Puesto que sólo tiene 2 valores posibles, 1 o 0, es un sistema de numeración de base 2. A continuación, simplemente agregue valores de posición hasta que alcance el número que desea. Por lo tanto, el primer valor de posición es 20. Cualquier número a la potencia 0 es igual a 1. Así que es el valor de lugar 1s. El segundo valor de posición es 21. Cualquier número a la potencia 1 es igual a sí mismo, en este caso 2. El tercero es 22 que es igual a 4 y así sucesivamente. Así que para sacarlo: Y así sucesivamente. O usted podría escribirlo como esto: Es lo mismo. Si no quieres usar exponentes, empieza con 1 y doble. 1x2 es 2. 2x2 es 4. 4x2 es 8. 8x2 es 16. 16x2 es 32 y así sucesivamente. Así que si tenías el número 128 en la base 10 y querías convertirlo a binario, simplemente pondrías un 1 en el 128º lugar y rellenarías 0s en todas las posiciones restantes de bits, por lo que sería: Ahora vamos a intentar un número más difícil . Digamos 500. Vamos a dibujar los valores de lugar para que quede claro: No tienes que ir al lugar 512ths, ya que no tendría un grupo de 512 con sólo 500. Así que primero poner un 1 en el lugar 256ths, a continuación, sustraer 256 Desde 500 para encontrar el resto. 500-256 es 244. Mira tu siguiente valor de lugar, 128. ¿Tienes un grupo de 128 en 244 Sí, así que pon un 1 en el lugar 128, sustrayelo para encontrar tu resto otra vez. 244-128 es 116. ¿Tienes un grupo de 64 en 116 Sí, así que pon tu 1 en el lugar de los 64 y sustrayelo de nuevo. 116-64 es 52. ¿Tiene un grupo de 32 en 52 Sí. Continuar. 52-32 es 20. ¿Tiene un grupo de 16 en 20 Sí. Continuar. 20-16 es 4. ¿Tienes un grupo de 8 en 4? No, así que pon un 0 en el lugar octavos. Su siguiente valor de lugar es 4. ¿Tiene un grupo de 4 en 4 Sí, tiene 1 por lo que poner su 1 allí. Ahora tienes un resto de 0 y has terminado. Ponga simplemente 0s en cualquier pedacito que usted ha dejado. Tan 500 en decimal es igual a 111110100. Ahora usted quiere comprobar su matemáticas así que mire sus valores del lugar y agregue los respaldo. Usted tiene un 1 en el 256, 128, 64, 32, 16, y el lugar 4s así que agregue esos números para arriba y usted conseguirá 500. Enhorabuena, usted lo ha hecho correctamente. Así que era cómo convertir un número decimal en binario. ¿Qué pasa si usted tiene un número binario que desea convertir a decimal Su básicamente lo mismo. Vamos a tomar un número diferente, 110010110101. Queremos hacer que el decimal. Simplemente escriba los valores de lugar debajo de los números y agréguelos todos. OK, así que una vez que sepas qué valores de lugar tienes, simplemente sumamos todos los valores en los que tienes un 1 (puesto que 1 significa que tienes un grupo de ese número y un 0 significa que no piensas en él así: Tengo 1 grupo de 2048, tengo 0 grupos de 512, etc). Así que agrega 20481024128321641 y obtienes 3253. Felicitaciones, has terminado. Gracias por leer este tutorial. No puedo encontrar tu respuesta. Pedir.
No comments:
Post a Comment