fbpx
Wikipedia

B (lenguaje de programación)

B es el nombre de un lenguaje de programación desarrollado en los Bell Labs, predecesor del lenguaje de programación C.

B
Laboratorios Bell y Ken Thompson
Información general
Paradigma Imperativo (procedural)
Apareció en 1969
Diseñado por Kenneth L. Thompson, Dennis M. Ritchie
Sistema de tipos Sin tipos
Implementaciones Múltiples
Influido por BCPL
Ha influido a C

Fue mayoritariamente un trabajo de Kenneth L. Thompson con contribuciones de Dennis M. Ritchie publicado por primera vez en el año 1969 [cita requerida].

Historia

B fue esencialmente una simplificación del lenguaje BCPL, eliminando cualquier componente que Thompson considerase prescindible de forma que cupiese en la memoria de las minicomputadoras de la época. El lenguaje también incluyó algunos cambios de acuerdo con las preferencias de Thompson (la mayoría para reducir el número de caracteres de un programa típico).

Al igual que BCPL, y FORTH, B sólo tenía un tipo de datos, que correspondía con una palabra de máquina. La mayoría de operadores lo manejaban como un entero; por ejemplo + (suma), - (resta), * (multiplicación) o / (división). Otros operadores lo trataban como una dirección de memoria a la que hacer referencia: un puntero. B ofrecía operadores que permitían obtener la dirección de una determinada variable, o escribir en la dirección apuntada por una variable puntero.

Las primeras implementaciones fueron para las minicomputadoras PDP-7 y PDP-11 ejecutando versiones antiguas de UNIX; y para los mainframes de 36 bits Honeywell ejecutando el sistema GCOS.

Evolución

La naturaleza sin tipos de B tenía sentido en el Honeywell, en la PDP-7 y muchas otras computadoras antiguas, pero fue un problema en la PDP-11 porque era difícil acceder a tipos de caracteres de datos que la PDP-11 y la mayoría de computadoras modernas soportaban. Comenzando en 1971, Ritchie hizo cambios al lenguaje al mismo tiempo que convertía su compilador para producir lenguaje de máquina nativo. El más notable fue la adición de tipos de datos diferentes para las variables.

Durante 1971 y 1972 B evolucionó primero en "Nuevo B" (New B, NB) y después en C. Más tarde, a principios de 1973, fue añadido un preprocesador a petición de Alan Snyder.

El esfuerzo fue lo suficientemente completo en este año como para que durante el verano el núcleo del sistema UNIX para la PDP-11 fuese reescrito en C.

Durante el periodo 1972-1973 hubo la necesidad de portarlo al Honeywell 635 y al IBM 360/370, por lo que Mike Lesk escribió el "paquete de E/S portable" que se convertiría en la "E/S estándar" (standard I/O o stdio) del lenguaje C.

B se continuó utilizando hasta los años 90 en los mainframes Honeywell y en ciertos sistemas embebidos por una variedad de razones, incluyendo el uso de hardware limitado en estos sistemas; librerías extensivas, herramientas; o simplemente porque era lo suficientemente bueno como para hacer el trabajo.

Nombre

B fue enormemente influido por BCPL, y su nombre fue probablemente una contracción de "BCPL". Sin embargo es posible que su nombre se hubiera basado en el lenguaje de programación Bon, un lenguaje más antiguo y no relacionado con B, diseñado por Thompson para su uso en MULTICS.

Ejemplos

La siguiente función de ejemplo está tomada del Users' Reference to B por Ken Thompson:

/* La siguiente función imprime un número no negativo, n, en  base b, donde 2<=b<=10. Esta rutina utiliza el hecho de  que en el juego de caracteres ASCII, los digitos 0 a 9  tienen valores de código secuenciales.  */ printn(n,b) { extern putchar; auto a; if(a=n/b) /* asignación, no comprobación de igualdad */  printn(a, b); /* recursivo */ putchar(n%b + '0'); } 

Este programa de ejemplo en B utiliza la función anterior para sumar tres números imprimiendo por pantalla el resultado.

main( ) { extern printn; auto a, b, c, sum; a = 1; b = 2; c = 3; sum = a+b+c; printn(sum,10); } 

Enlaces externos

  • The Development of the C Language, Dennis M. Ritchie. Pone B en el contexto de BCPL y C.
  • Users' Reference to B, Ken Thompson. Describe la versión para PDP-11 (pdf).
  • The Programming Language B, S. C. Johnson & B. W. Kernighan, Technical Report CS TR 8, Bell Labs (enero de 1973). Describe la versión para GCOS.
  •   Datos: Q797302

lenguaje, programación, nombre, lenguaje, programación, desarrollado, bell, labs, predecesor, lenguaje, programación, blaboratorios, bell, thompsoninformación, generalparadigmaimperativo, procedural, apareció, en1969diseñado, porkenneth, thompson, dennis, ritc. B es el nombre de un lenguaje de programacion desarrollado en los Bell Labs predecesor del lenguaje de programacion C BLaboratorios Bell y Ken ThompsonInformacion generalParadigmaImperativo procedural Aparecio en1969Disenado porKenneth L Thompson Dennis M RitchieSistema de tiposSin tiposImplementacionesMultiplesInfluido porBCPLHa influido aC editar datos en Wikidata Fue mayoritariamente un trabajo de Kenneth L Thompson con contribuciones de Dennis M Ritchie publicado por primera vez en el ano 1969 cita requerida Indice 1 Historia 2 Evolucion 3 Nombre 4 Ejemplos 5 Enlaces externosHistoria EditarB fue esencialmente una simplificacion del lenguaje BCPL eliminando cualquier componente que Thompson considerase prescindible de forma que cupiese en la memoria de las minicomputadoras de la epoca El lenguaje tambien incluyo algunos cambios de acuerdo con las preferencias de Thompson la mayoria para reducir el numero de caracteres de un programa tipico Al igual que BCPL y FORTH B solo tenia un tipo de datos que correspondia con una palabra de maquina La mayoria de operadores lo manejaban como un entero por ejemplo suma resta multiplicacion o division Otros operadores lo trataban como una direccion de memoria a la que hacer referencia un puntero B ofrecia operadores que permitian obtener la direccion de una determinada variable o escribir en la direccion apuntada por una variable puntero Las primeras implementaciones fueron para las minicomputadoras PDP 7 y PDP 11 ejecutando versiones antiguas de UNIX y para los mainframes de 36 bits Honeywell ejecutando el sistema GCOS Evolucion EditarLa naturaleza sin tipos de B tenia sentido en el Honeywell en la PDP 7 y muchas otras computadoras antiguas pero fue un problema en la PDP 11 porque era dificil acceder a tipos de caracteres de datos que la PDP 11 y la mayoria de computadoras modernas soportaban Comenzando en 1971 Ritchie hizo cambios al lenguaje al mismo tiempo que convertia su compilador para producir lenguaje de maquina nativo El mas notable fue la adicion de tipos de datos diferentes para las variables Durante 1971 y 1972 B evoluciono primero en Nuevo B New B NB y despues en C Mas tarde a principios de 1973 fue anadido un preprocesador a peticion de Alan Snyder El esfuerzo fue lo suficientemente completo en este ano como para que durante el verano el nucleo del sistema UNIX para la PDP 11 fuese reescrito en C Durante el periodo 1972 1973 hubo la necesidad de portarlo al Honeywell 635 y al IBM 360 370 por lo que Mike Lesk escribio el paquete de E S portable que se convertiria en la E S estandar standard I O o stdio del lenguaje C B se continuo utilizando hasta los anos 90 en los mainframes Honeywell y en ciertos sistemas embebidos por una variedad de razones incluyendo el uso de hardware limitado en estos sistemas librerias extensivas herramientas o simplemente porque era lo suficientemente bueno como para hacer el trabajo Nombre EditarB fue enormemente influido por BCPL y su nombre fue probablemente una contraccion de BCPL Sin embargo es posible que su nombre se hubiera basado en el lenguaje de programacion Bon un lenguaje mas antiguo y no relacionado con B disenado por Thompson para su uso en MULTICS Ejemplos EditarLa siguiente funcion de ejemplo esta tomada del Users Reference to B por Ken Thompson La siguiente funcion imprime un numero no negativo n en base b donde 2 lt b lt 10 Esta rutina utiliza el hecho de que en el juego de caracteres ASCII los digitos 0 a 9 tienen valores de codigo secuenciales printn n b extern putchar auto a if a n b asignacion no comprobacion de igualdad printn a b recursivo putchar n b 0 Este programa de ejemplo en B utiliza la funcion anterior para sumar tres numeros imprimiendo por pantalla el resultado main extern printn auto a b c sum a 1 b 2 c 3 sum a b c printn sum 10 Enlaces externos EditarThe Development of the C Language Dennis M Ritchie Pone B en el contexto de BCPL y C Users Reference to B Ken Thompson Describe la version para PDP 11 pdf The Programming Language B S C Johnson amp B W Kernighan Technical Report CS TR 8 Bell Labs enero de 1973 Describe la version para GCOS Datos Q797302Obtenido de https es wikipedia org w index php title B lenguaje de programacion amp oldid 134938810, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos