Conversor negabinario
13 se escribe 11101 en negabinario, la base −2, cuyas posiciones alternan 1, −2, 4, −8 y 16, así que cualquier entero, también los negativos, se escribe solo con 0 y 1 y sin signo menos. Convierta de decimal a negabinario y al revés. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Valor
- 13
- Dirección
- To negabinary
- Resultado
- 11101
- Decimal
- 13
- Negabinario
- 11101
- Alfabeto
- 01
Un conversor negabinario reescribe un número entero con signo entre la base 10 habitual y la base −2, el sistema posicional cuya raíz es menos dos y cuyos únicos dígitos son cero y uno. Como las potencias sucesivas de −2 alternan entre valores positivos y negativos, todo entero—positivo, negativo o cero—tiene una representación única sin bit de signo dedicado ni anchura de complemento a dos.
Cómo funcionan la codificación y la decodificación negabinarias (base −2)
El negabinario es notación posicional con raíz menos dos. Cada posición es una potencia de −2: la de las unidades es (−2) elevado a cero, que vale uno; la siguiente es −2; luego cuatro; luego −8; luego dieciséis; y así sucesivamente, alternando el signo al crecer el exponente. Los únicos símbolos de dígito son cero y uno—el mismo alfabeto que el binario ordinario—, pero los signos de posición alternos permiten que una cadena de unos y ceros evalúe un total negativo sin ningún carácter menos inicial.
Comprobaciones clásicas: el dos se codifica como uno-uno-cero (porque cuatro menos dos es dos), el cuatro como uno-cero-cero y el menos uno como uno-uno (porque menos dos más uno es menos uno). Para codificar un entero decimal con signo, tome repetidamente el resto al dividir por −2 y ajústelo para que cada resto sea no negativo: si el resto fuera −1 bajo división truncante, sume dos al resto y lleve uno al cociente siguiente.
Los dígitos se recogen del menos significativo al más y se invierten para la cadena habitual de izquierda a derecha, eliminando ceros iniciales salvo para el propio cero. Para decodificar, recorra la cadena de izquierda a derecha con acumulación al estilo Horner: multiplique el total acumulado por −2 y sume el dígito siguiente. Un prefijo opcional 0nb o 0NB se elimina igual que las herramientas binarias aceptan 0b, de modo que los scripts puedan etiquetar literales en base menos dos con claridad.
Los valores absolutos deben permanecer en el rango de enteros seguros de JavaScript para que cada dígito siga siendo exacto al serializar el resultado. Si solo necesita binario de base positiva o codificaciones de complemento a dos de anchura fija, esas son intenciones de búsqueda distintas con sus propias páginas, en lugar de forzar este conversor de base menos dos con signo más allá de su alcance honesto.
Dónde un conversor negabinario resulta útil de verdad
Los cursos de informática introducen bases negativas para mostrar que los bits de signo y el complemento a dos son decisiones de diseño y no leyes de la naturaleza: cuando los estudiantes convierten a mano unos cuantos enteros negativos, ven cómo los valores de posición alternos absorben el signo en los propios dígitos.
Los generadores de preparación de exámenes y los plugins LMS necesitan un oráculo determinista que marque como incorrecta una decodificación binaria ordinaria de una cadena pensada como negabinaria, y que nunca invente un menos inicial en una cadena de bits válida. Diseñadores de juegos inventan sistemas de numeración alienígenas sin glifo de signo y necesitan conversión determinista para herramientas de lore y formatos de guardado.
Trate volcados binarios o hexadecimales ordinarios, complemento a dos de anchura fija, código Gray y tablas de raíces multibase que se detienen en treinta y seis como intenciones de búsqueda distintas con sus propias páginas, en lugar de estirar este conversor entero negabinario más allá de su alcance honesto.
Qué puede hacer con ella
Lecciones de aritmética en base negativa
Convierta enteros de deberes entre base 10 y base −2 para que los estudiantes vean cómo los signos de posición alternos codifican negativos sin bit de signo.
Corrección automática de exámenes y LMS
Califique ítems de codificación y decodificación negabinaria con un oráculo determinista que rechaza dígitos no válidos y nunca inventa un menos inicial.
Preguntas frecuentes
¿Qué es el negabinario?
El negabinario es la base −2: notación posicional con raíz menos dos y solo dígitos 0 y 1. Las potencias de −2 alternan de signo, de modo que todo entero tiene una representación única sin bit de signo dedicado.
¿Por qué no hay signo menos en resultados negativos de la cadena de bits?
Los valores de posición negativos (…, 16, −8, 4, −2, 1) ya codifican el signo. Una cadena como 11 significa −2 + 1 = −1.
¿Cómo paso un número decimal a negabinario a mano?
Divida entre −2 una y otra vez y deje cada resto en 0 o 1: si un resto saliera −1, súmele 2 y lleve 1 al cociente. Después lea los restos del último al primero; 13 da 11101.
¿Cómo convierto un número negabinario a decimal?
Sume el valor de las posiciones donde hay un 1, empezando por la derecha: 1, −2, 4, −8, 16 y así sucesivamente. Para 11101 eso es 16 − 8 + 4 + 1, que da 13. También puede multiplicar el total acumulado por −2 y sumar cada dígito de izquierda a derecha.
¿Puedo convertir fracciones o números muy grandes?
No. Solo se aceptan números enteros, con un más o un menos inicial opcional; las fracciones y la notación científica se rechazan. Funcionan valores de hasta 9007199254740991 en valor absoluto, para que cada dígito del resultado sea exacto.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/enc/base-negabinary \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":"13","direction":"to_negabinary"}'const res = await fetch("https://api.kit.forhosting.com/enc/base-negabinary", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": "13",
"direction": "to_negabinary"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/base-negabinary",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": "13",
"direction": "to_negabinary"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/base-negabinary", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":"13","direction":"to_negabinary"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":"13","direction":"to_negabinary"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/base-negabinary", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"value": "13",
"direction": "to_negabinary"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.base_negabinary",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Estudiantes de aritmética informática, autores de pasatiempos e ingenieros que exploran sistemas numéricos exóticos pueden pegar un valor decimal o una cadena de bits, elegir codificar o decodificar y recibir un resultado determinista con el entero decimal limpio, la cadena negabinaria, el recuento de dígitos y el alfabeto fijo. Los dígitos no válidos, la entrada vacía y los no enteros fallan con un error invalid_input claro en lugar de una respuesta silenciosamente incorrecta. El precio de las llamadas API correctas es la base publicada de $0.002 por elemento.
Cómo funcionan la codificación y la decodificación negabinarias (base −2)
Un carácter no válido—espacio, signo más o menos dentro de la cadena de bits, dígito dos o superior, letra o signo de puntuación—aborta con invalid input nombrando el carácter erróneo y su posición. El algoritmo usa solo aritmética entera exacta: sin redondeo en coma flotante, sin semillas aleatorias, sin marcas de tiempo de reloj y sin llamadas de red, de modo que entradas idénticas producen siempre el mismo JSON.
Qué envía usted y qué recibe a cambio
Envíe dos campos obligatorios: value y direction. Los valores decimales absolutos mayores que Number.MAX_SAFE_INTEGER se rechazan para que los dígitos de orden bajo no desaparezcan en silencio. Viajes de ida y vuelta clásicos: el trece se codifica como uno-uno-uno-cero-uno y se decodifica de nuevo a trece, y el menos cinco se codifica como uno-uno-uno-uno. Direction debe ser to_negabinary cuando value es un entero decimal con signo, o from_negabinary cuando value es una cadena de bits en base −2. Se aceptan alias para que formularios y scripts usen los nombres que encajen en su interfaz: value también admite n, number, input, text, decimal, negabinary, bits y base_neg2; direction también admite dir, mode y op, más sinónimos cortos como to, from, encode, decode, to_base_neg2, from_base_neg2, decimal_to_negabinary y negabinary_to_decimal. Para to_negabinary, value puede ser un entero JSON o una cadena de dígitos con más o menos opcional al inicio; fracciones, notación científica, palabras sueltas, NaN, Infinity y cadenas vacías fallan con invalid_input y no se cobran. Para from_negabinary, cada carácter debe ser cero o uno tras un prefijo 0nb opcional; cualquier otro carácter—incluidos dos, tres, guion bajo, guion, espacio y un signo inicial—falla con un mensaje que nombra el dígito negabinario no válido y su posición de base cero. En caso de éxito la respuesta devuelve la cadena value limpia, la dirección normalizada, decimal como número (negativo cuando corresponda), negabinary como la cadena compacta en base −2, result como la forma convertida principal (negabinario al codificar, cadena decimal al decodificar), la cadena de alfabeto 01, base en −2 y digit_count de la representación negabinaria. El precio de las llamadas API correctas es la base publicada de $0.002 por elemento; los fallos de validación no consumen saldo prepago.
Dónde un conversor negabinario resulta útil de verdad
Autores de pasatiempos y de programación competitiva plantean retos que exigen imprimir o analizar base −2 sin llamar a un sistema de álgebra computacional completo; una API de parseo diminuta aporta valores esperados para pruebas de muestra y claves privadas. Como esta capacidad es un motor de parseo puro, el precio API es la base publicada de $0.002 por elemento correcto y la validación fallida no consume saldo.
Casos de integración
Claves de pasatiempos y fixtures de pruebas
Genere cadenas esperadas en base −2 para muestras de programación competitiva y pruebas de IU multibase, incluidos casos límite negativos.
Preguntas técnicas
¿Cómo convierto un entero decimal a negabinario?
Envíe direction to_negabinary y value como un número entero con signo (entero JSON o cadena de dígitos con +/− opcional). La API devuelve la cadena de bits en base −2 en los campos negabinary y result.
¿Cómo decodifico una cadena negabinaria a decimal?
Envíe direction from_negabinary y value como una cadena solo de dígitos 0 y 1 (prefijo 0nb opcional). La API devuelve el entero decimal con signo; no incluya un + o − inicial en la cadena de bits.
¿Cuánto cuesta el conversor negabinario?
La herramienta del navegador es gratuita. Las peticiones API usan saldo prepago KIT a $0.002 por llamada correcta; la entrada no válida no se factura.