Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - biribau

#21
Sí, sería algo así como:

while True:
       conexion = accept(socket)
       start_thread(worker, conexion)
#22
A que te refieres con servicio? un servicio típico de escuchar en un puerto? para atender a varias lo mejor es que un hilo acepte conexiones y cuando entre una, cree un hilo trabajador que provea del servicio. También se puede hacer monohilo más difícil con espera no bloqueante y con una cola de eventos o alguna otra especie de context switch(o hilos) implementado a mano.
#23
Quiero procesar con un script para analizar propiedades y ciertas cosas, y necesito una guía con las siguientes características:
- Evidentemente un formato que pueda ser procesado automáticamente, PDF complica las cosas.
- Que indique en que versión se incorporó la instrucción(286, 386, etc)
- Que indique su codificación hexadecimal(opcode, ModRM, Immediate operands, etc)
- A ser posible que indique sus número de ciclos, pipe de ejecución, tiempos de espera, etc.
- A ser posible excepciones que produce
- Sintaxis en ensamblador
- Que esté actualizado! no he encontrado lo que busco en intel  :-\

Básicamente esto, no me interesa la descripción o algoritmo con lo que hace... todas las guias de intel son en PDF? se me está haciendo difícil de procesar, además no trae los procesadores en que funciona, ni los ciclos...

Me autorespondo, lo siento por haber buscado tan poco, estaba obcecado en procesar las guias de intel en Perl
http://ref.x86asm.net/
#24
Scripting / Re: contar caracteres
13 Mayo 2010, 16:23 PM
Cita de: minette1988 en 13 Mayo 2010, 12:42 PM
Código (bash) [Seleccionar]

    num_carac= `wc -c $1`

No puede haber espacios en asignaciones a variables entre el =
A="hola" bien
A= "hola" mal
El error no parece tener que ver con eso, pero ten en cuenta eso
#25
Programación C/C++ / Re: Juegos
13 Mayo 2010, 02:55 AM
Sí, el de adivinar palabras por aprendizaje, haciendo preguntas de si o no.
#26
Entonces cuando viajas al pasado sólo con tu mente, cuando te encuentras contigo mismo ese ser no tiene mente? pues vaya estafa de viaje!
#27
PHP / Re: agregar entradas
12 Mayo 2010, 22:49 PM
Quizá te puedan ayudar mejor en desarrollo web
#28
Imagina que la mente es una pepita de oro. Si viajas al pasado, un segundo antes de ahora, habrá 2 pepitas, o sea que si en total en el mundo hay 2000 mentes, habrá 2001. Y cuando a la mente del pasado pase un segundo, volverá a viajar un segundo atrás, con lo cual habrá 3 pepitas de una solo.
Lo explico porque es lo lógico, pero nadie ha dicho que los viajes en el tiempo hayan de ser lógicos. Pensamos en el universo como si fuera un ordenador. Y no lo es, o al menos no uno corriente, de los cuánticos ya no sé porque realmente nunca me molesté en tratar de entenderlos.
#29
Bueno, te diré primero un método que nunca me falla: la búsqueda ciega, su ejemplo más conocido es la fuerza bruta. Sólo tienes que calcular todas las combinaciones posibles y luego ordenarlas según tu criterio o puntuarlas con una métrica tuya. Luego yo suelo ir incluyéndole heurísticas, pistas que vas sacando tu y pueden ayudar la búsqueda.
En este caso yo lo he hecho en un papel, creo que no me equivoco aunque tengo las mates algo oxidadas y no sabría demostrártelo, esperemos que la intuición no me falle.
Lo que me ha salido es una especie de algoritmo fractal o recursivo, ahora lo explico:
Dados un cuadrado y una función de distancia.
Para un punto es trivial, vale cualquier punto del cuadrado.
Para 2 puntos es trivial, un punto en una esquina y otro en la contraria. Por ello cambiamos el primer paso, en coger cualquier punto preferimos coger uno esquinado. Con esto ya podemos inventar un algoritmo incremental que vaya añadiendo puntos.
Para añadir un punto a un cuadrado con n puntos colocados de esta manera(recursiva, partiendo de los 2 esquinados), trazamos una cruz formada por 2 lineas diagonales que salen de los puntos más externos, la otra diagonal es la que corta perpendicularmente a estas 2, vamos a mirar los puntos que interseccionan la cruz con el perímetro del cuadrado o el cuadrado vamos, que es lo mismo.
El nuevo punto lo ponemos en la primera de estas intersecciones que no contenga un punto. Si las 4 intersecciones ya estan ocupadas usamos el punto central de la interseccion. Si también está ocupado pasamos a repetir el proceso pero con el cuadrado cogiendo uno de los puntos externos y el punto central. Pero ha de ser hecho como exploracion en anchura, o sea sólo mirar un nivel, luego el siguiente subcuadrado hasta los 4, y si entonces no hay hueco pasamos a explorar el segundo nivel de cada uno de los 4 subcuadrados recursivamente.

Soltado el rollo, si este algoritmo es bueno, creo que se puede hacer con un simple bucle iterativo si disponemos el número de puntos a priori(que ya has dicho que sí), el número de puntos que cubre cada nivel son: (4,4+1), +(4,4+4),  +(12,12+4)
O sea, que primero se cubren las esquinas, 4
Luego los centros, 1
Cuando hay más de un cuadro anidado, las esquinas se comparten muchas,
son ... bueno te dejo calcularlas, habría que tener más muestras. Esto sería para calcular el numero de divisiones partiendo de un numero de puntos a colocar, luego sólo sería llenar los vértices de las divisiones del cuadrado.

Quizá lo esté liando, a ver, simplifico, rellenas las 4 esquinas en ese orden, luego el centro, luego divides el cuadro en 4 y cubres las intersecciones, de cada subcuadro rellenas el centro, luego de cada subcuadro lo divides en 4 y repites el proceso. Sólo ten en cuenta que no puedes hacerlo con recursividad normal pues sería en profundidad, tu necesitas explorar en anchura(en vez de una pila LIFO usa una cola FIFO)

Perdón por el rollo, espero que te sirva, aunque el mío es para espacio continuo, no discreto(dividido en casillas) quizá podría cambiar, jugar con el redondeo, a veces arriba a veces abajo? no sé, si me animo te intento luego hacer un code :).
#30
Me alegro  ;D, hace falta que comente que todos los argv los tienes desplazados uno de más?(igual que ese caso en concreto pero con argv[3] ,4 etc) no, no?  ;)