elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Hacer cosas sin librerias
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: Hacer cosas sin librerias  (Leído 8,131 veces)
patilanz


Desconectado Desconectado

Mensajes: 481

555-555-0199@example.com


Ver Perfil WWW
Hacer cosas sin librerias
« en: 19 Febrero 2014, 22:54 pm »

Hola estoy estudiando c++ con un libro pero siempre te dicen que tienes que utilizar por ejemplo para obtener flujo por el teclado tienes que utilizar la librería iostream
Pero yo quiero saber hacer lo sin utilizar ninguna librería. Osea conectarme con el teclado y esperar a que el usuario introduzca teclas o conectar me con la pantalla y imprimir algo.

Como hacer esto?

Saludos


En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Hacer cosas sin librerias
« Respuesta #1 en: 20 Febrero 2014, 02:42 am »

estoy estudiando c++ con un libro pero siempre te dicen que tienes que utilizar por ejemplo para obtener flujo por el teclado tienes que utilizar la librería iostream
Ello porque la biblioteca estándar de C++ esta garantizada en aplicaciones que se ejecutan sobre un anfitrión (el SO).

Pero yo quiero saber hacer lo sin utilizar ninguna librería. Osea conectarme con el teclado y esperar a que el usuario introduzca teclas o conectar me con la pantalla y imprimir algo.
Un SO moderno (por ejemplo MS Windows) no te permite acceder directamente a recursos como el hardware[1], en su lugar utilizas su API, siguiendo el ejemplo si deseas utilizar la Win32 API para aplicaciones de consola la referencia del fabricante se encuentra a partir de la pagina Consoles.

Para lo que deseas debes utilizar un SO como MS-DOS o bien, en el caso de MS Windows, [1]Getting started with drivers.

Un saludo


En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
patilanz


Desconectado Desconectado

Mensajes: 481

555-555-0199@example.com


Ver Perfil WWW
Re: Hacer cosas sin librerias
« Respuesta #2 en: 20 Febrero 2014, 07:48 am »

Hola ppr lo que he entendido todo se realiza con librerías del sistema operativo o estándares ? Si quiero reproducir un sonido que se conecta con los drives de sonido no puedo sin usar una api?
Pero si es asi entonces si quiero hacer un drive que tambien es un programa o no?

Saludos
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Hacer cosas sin librerias
« Respuesta #3 en: 20 Febrero 2014, 08:43 am »

Citar
Hola ppr lo que he entendido todo se realiza con librerías del sistema operativo o estándares ? Si quiero reproducir un sonido que se conecta con los drives de sonido no puedo sin usar una api?

las standares enlazan las de sistema para su uso...

Citar
Pero si es asi entonces si quiero hacer un drive que tambien es un programa o no?
driver*

también es un programa, algo más complejo y que tienes que tomar en cuenta que depende de la tarjeta de sonido independientemente (es decir posiblemente si la usas en otra pc no sirva), solo por nombrar uno de cientos de problemas que te dará...
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
eferion


Desconectado Desconectado

Mensajes: 1.248


Ver Perfil
Re: Hacer cosas sin librerias
« Respuesta #4 en: 20 Febrero 2014, 09:03 am »

Hola ppr lo que he entendido todo se realiza con librerías del sistema operativo o estándares ? Si quiero reproducir un sonido que se conecta con los drives de sonido no puedo sin usar una api?

Hay mecanismos para comunicarse directamente con los drivers... lo que sucede es que si bajas a ese nivel te encontrarás con el problema de que tus aplicaciones no van a funcionar en equipos diferentes al tuyo.

La razón es que los drivers son algo que está muy cercano al hardware y, por tanto, es muy dependiente del mismo. Quiero decir, si cambia el hardware cambian los drivers... y si tú en tu programa no añades la compatibilidad necesaria para detectar, reconocer y utilizar al menos los drivers más comunes del mercado tu aplicación no servirá para mucho.

El sistema software de un equipo se estructura en capas. Las capas más bajas y más cercanas al hardware son altamente dependientes del mismo... la finalidad de las capas más altas es proporcionar un entorno independiente y aislado a través del cual sabes que tu código siempre va a funcionar, independientemente de lo que haya por debajo.

PD.: no vas a aprender más por programar a bajo nivel, son cosas distintas y cada una tiene su lugar y sus usos.
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re:
« Respuesta #5 en: 20 Febrero 2014, 10:39 am »

Si buscas bajo nivel, te diría ensamblador. Pero hasta ensamblador, usa api de windows y otras.

Enviado desde mi ST21i mediante Tapatalk
En línea

Gh057


Desconectado Desconectado

Mensajes: 1.190



Ver Perfil
Re: Hacer cosas sin librerias
« Respuesta #6 en: 20 Febrero 2014, 11:54 am »

Hola patilanz, basícamente la programación es modular, es basa en "divide y vencerás" sea mediante estructuras o funciones, o hasta en el paradigma del POO el código se divide en diferentes partes, formando nuestra solución al problema planteado, según el algoritmo implementado.

El origen y la parte de más bajo nivel es el lenguaje máquina, luego el ensamblador como comúnmente se conoce; pero hasta él tienes diferentes sentencias ya definidas para poder operar... mas en todos los conocidos como lenguaje de medio o alto nivel (porque son más entendibles al humano, no por facilidad o dificultad de implementarlo) tienes funciones implementadas en bibliotecas (verdadera traducción a "library") para utilizar o bien crear las tuyas propias... con ello no solo resuelvas más rápidamente el prolema sino que puedes reutilizar código, ganas tiempo y es más fácil luego mejorar y depurar la aplicación.

Puedes irte creando tus propias funciones, entiéndase implementar algoritmos propios o ya definidos; pero en un futuro entenderás que no sirve "reinventar la rueda" y el usar métodos o funciones desde bibliotecas te permitirá hacer aplicaciones de mejor calidad. Saludos!
En línea

4 d0nd3 1r4 3l gh057? l4 r3d 3s 74n v4s74 3 1nf1n1t4...
patilanz


Desconectado Desconectado

Mensajes: 481

555-555-0199@example.com


Ver Perfil WWW
Re: Hacer cosas sin librerias
« Respuesta #7 en: 22 Febrero 2014, 10:57 am »

Hola gracias por sus respuestas ya me ha quedado mas claro. Voy a intentar bajar a un nivel mas bajo para conocer los drivers y lo demás. Pero voy a utilizar las librerías ya existentes aunque siempre quiero conocer como funcionan por dentro ya que en la mayoría de los libros o tutoriales te dice que no se necesario pero yo creo que asi se aprende mucho mas ya que si no sabes como funcionan nunca aprenderás a crear tus propias librerías mas complejas.

Y otra cosa si quieres editar un programa ya existente o crear un exploit para el tendrás que conocer las cosas mas a fondo osea ensamblador y el lenguaje maquina supongo. O por ejemplo cuando creas un programa que necesita utilizar un hardware creado por mi mismo que se conecta por usb necesitas crear tus drivers y todo.

Muchas gracias
En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Hacer cosas sin librerias
« Respuesta #8 en: 22 Febrero 2014, 12:04 pm »

Hola gracias por sus respuestas ya me ha quedado mas claro. Voy a intentar bajar a un nivel mas bajo para conocer los drivers y lo demás. Pero voy a utilizar las librerías ya existentes aunque siempre quiero conocer como funcionan por dentro ya que en la mayoría de los libros o tutoriales te dice que no se necesario pero yo creo que asi se aprende mucho mas ya que si no sabes como funcionan nunca aprenderás a crear tus propias librerías mas complejas.
En la librería estándar hay muchas cosas que puedes intentar implementar sin necesidad de meterte en el tema de hardware o APIS.

En C++ puedes intentar recrear las STL (vector,list,map...).

ya que si no sabes como funcionan nunca aprenderás a crear tus propias librerías mas complejas.
Pues te equivocas completamente, no hay ninguna necesidad de saber como se implementan las librerías estándares (sobre todo las que van vía hardware). Tan solo tienes que aprender que hacen y como funcionan.

Es un paradigma que se llama "encapsulamiento".
« Última modificación: 22 Febrero 2014, 12:10 pm por amchacon » En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
patilanz


Desconectado Desconectado

Mensajes: 481

555-555-0199@example.com


Ver Perfil WWW
Re: Hacer cosas sin librerias
« Respuesta #9 en: 22 Febrero 2014, 22:09 pm »

Bueno si creo que tienes razón pero si tendrás que entrar en APIS ya que por ejemplo para cambiar el fondo de escritorio de windows no creo que exista una librería para esto o cosas así de los sistemas operativos no comunes.

Saludos
En línea

Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
CDs de controladores y mas cosas, que hacer
Dudas Generales
CATBro 2 2,553 Último mensaje 12 Marzo 2012, 22:58 pm
por CATBro
CDs de controladores y mas cosas, que hacer????
Software
MARTOY 7 2,745 Último mensaje 14 Marzo 2012, 05:08 am
por simorg
Hacer cosas como anonimo
Seguridad
Chico de fuego 5 3,187 Último mensaje 27 Febrero 2015, 16:37 pm
por Chico de fuego
10 cosas que no podrás hacer a partir del 1 de julio por la Ley Mordaza « 1 2 »
Noticias
Scaramanga 17 4,593 Último mensaje 3 Julio 2015, 22:08 pm
por Jaixon Jax
6 cosas que puede hacer el GPS además de posicionarte
Noticias
El_Andaluz 1 1,225 Último mensaje 4 Abril 2020, 15:42 pm
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines