Chère journal,
En me couchant hier soir, je me suis poser une question hyper existentiel qui ma empêcher de mendormir pendant au moins 10 bonne minutes.
Qui était là en premier le binaire ou le compilateur. Parce que sans compilateur, comment obtenir le binaire. Et pis sans le binaire du compilateur comment compiler ?
Dailleurs comment on fait un compilateur sans compilateur ? Et un binaire sans binaire ?
# Re: L'oeuf ou la poule ?
Posté par Matthieu BENOIST . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par webseb . Évalué à 2.
Je suis pas développeur. Mais par déduction j'imagine que tu parle de l'assembleur.
[^] # Re: L'oeuf ou la poule ?
Posté par PiT (site web personnel) . Évalué à 3.
[^] # Re: L'oeuf ou la poule ?
Posté par Clem Yeats . Évalué à 4.
# Re: L'oeuf ou la poule ?
Posté par Anonyme . Évalué à 2.
Quelqu'un a une autre idée ?
[^] # Re: L'oeuf ou la poule ?
Posté par jcs (site web personnel) . Évalué à 2.
[^] # Re: L'oeuf ou la poule ?
Posté par Vincent P (site web personnel) . Évalué à 4.
[^] # Re: L'oeuf ou la poule ?
Posté par imalip . Évalué à 2.
3Ko et fluide sur un 486SX25.
Allez, il faudrait quoi comme machine pour fairela meme chose qui tourne sous XP ? Au moins un P4 2.4 et une GeForce 4, non ?
Le type qui m'avait montre ca avait decide de refaire son driver souris, parce qu'il n'en trouvait pas de moins de 5Ko.
[^] # Re: L'oeuf ou la poule ?
Posté par med . Évalué à 3.
Voilà la démo pour ceux qui sont intéressés : http://www.elixir-studios.co.uk/nonflash/downloads/files/mars10.zip(...)
[^] # Re: L'oeuf ou la poule ?
Posté par Yhar Gla . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par titi toto . Évalué à 1.
(je viens d'installer dosbox pour l'occasion, et j'ai droit a des "illegal write" en boucle (pareil en root))
[^] # Re: L'oeuf ou la poule ?
Posté par Jean-Marc (site web personnel) . Évalué à 1.
Mais bon c'est de l'assembleur je pense, il faut être un peu timbré pour coder en code machine sur x86
[^] # Re: L'oeuf ou la poule ?
Posté par vincent LECOQ (site web personnel) . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par Maillequeule . Évalué à 2.
J'ai pas mal développé en assembleur (et direct en hexa parce que les mnémoniques c'était plus long), mais je suis pas un dieu pour autant.
Plus simplement, on n'avait pas le choix :)
M
[^] # Re: L'oeuf ou la poule ?
Posté par Adrien Bourdet . Évalué à 1.
Sinon, il y avait les catégories mions de 256 octets :)
j'ai déjà vu un code source, c'est assez impressionnant, que des opérations en virgules flotantes qui donnent un résultat magnifique
Et pour gagner un octet et rester dans la catégorie, le gars ne refermait pas le mode graphique, on pouvait lire en commentaire :
; mov ax, 3
; int 10h
et juste un petit "ret" a la fin :)
[^] # Re: L'oeuf ou la poule ?
Posté par Anonyme . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par abgech . Évalué à 1.
Personnellement, j'ai programmé en FORTRAN dès 1964 !
[^] # Re: L'oeuf ou la poule ?
Posté par Anonyme . Évalué à 1.
En fait j'ai pris comme reference un calculateur acheté par ma fac dans les annees 60 foncitonnant a base de carte perforée (dixit l'une de mes profs qui a connue cette epoque la, et elle n'a pas 60 piges, d'ou ma fourchette 60-70)
C'est vrai ke les premiers ordinateurs datent de la seconde guerre, mais leur utilisation par des vrais informaticiens et par ceux qui ont inventés l'informatique est bcq plus tard.
# Re: L'oeuf ou la poule ?
Posté par Clem Yeats . Évalué à 2.
Ce n'est donc pas aussi complique. Par contre pour l'oeuf et la poule... aucune idee...
[^] # Re: L'oeuf ou la poule ?
Posté par lom (site web personnel) . Évalué à 10.
La poule est un artifice créé par l'oeuf pour se reproduire.
[^] # Re: L'oeuf ou la poule ?
Posté par Matthieu Weber . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par zyglotron . Évalué à 1.
C'est un oeuf de schmurtz...
[^] # Re: L'oeuf ou la poule ?
Posté par lom (site web personnel) . Évalué à 1.
A poils longs ou à poils courts?
# Re: L'oeuf ou la poule ?
Posté par Midilaïr (site web personnel) . Évalué à 5.
Quand j'étais au lycée, on s'amusait à faire des jeux en assembleur sur HP48G(X), et il n'y a pas de compilateur ... il faut donc écrire sur papier ton code assembleur, le traduire à la main (par ex : add => 7E ce qui est faux car j'ai pas mon bouquin sous les yeux) , inverser les octets (j'ai jamais compris pourquoi) et enfin le rentrer dans la machine (sans faire de faute de frappe) et voila, tu a un binnaire exécutable sans compilateur ;op
[^] # Re: L'oeuf ou la poule ?
Posté par Clem Yeats . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par Jean Meyrand . Évalué à 3.
[^] # Re: L'oeuf ou la poule ?
Posté par Anonyme . Évalué à 2.
[^] # Re: L'oeuf ou la poule ?
Posté par Anonyme . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par Yusei (Mastodon) . Évalué à 3.
(Précision, big endian/little endian c'est une référence aux voyages de gulliver, dans lequel deux pays s'affrontent sur la manière dont on mange les oeufs à la coque: par le petit bout ou par le gros bout. D'où la traduction.)
[^] # Re: L'oeuf ou la poule ?
Posté par Matthieu BENOIST . Évalué à 2.
C'est pas une histoire de little endian / big endian* ? (rappel : en little endian l'octet de poid faible est stocker avant l'octet de poid fort)
Sur x86 on est en little endian le 68000 en big endian il me semble
* en français : petit boutiste / gros boutiste :-/
[^] # Re: L'oeuf ou la poule ?
Posté par Maillequeule . Évalué à 1.
M
[^] # Re: L'oeuf ou la poule ?
Posté par Vivi (site web personnel) . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par Laurent J (site web personnel, Mastodon) . Évalué à 1.
A l'époque de la GX, il y avait longtemps qu'il était sorti :-)
Bon, sinon, tu me rappelles de bons souvenirs :-)
l'auteur d'AsmFlash a codé son compilateur comme tu as décrit.
Dans le même principe, j'avais codé un compilateur beaucoup plus évolué, J-ASM. j'utilisais Asmflash pour le compiler. jusqu'au jour où la version de dev a été suffisement mature pour compiler ses propres sources. Et hop, j'ai viré asmflash. du coup, j'ai pu intégrer les nouveautés dans les sources qui m'ont permis alors d'améliorer encore plus le compilateur etc..
Bref, assez amusant je trouve de voir un programme, comment dirais-je.. qui a la capacité de se regénérer lui même :-)
Bon sinon, l'assembleur du processeur Saturn de la HP, ça roxor quand même pas mal pour une tite machine comme celle-là. Processeur 4 bits, mais avec des registres 64bits. Assez atypique ne trouvez vous pas :-)
[^] # Re: L'oeuf ou la poule ?
Posté par chl (site web personnel) . Évalué à 2.
Je me suis toujours demandé si ton compilateur etait mieux que celui d'Hpmad : MASD.
Processeur 4 bits, mais avec des registres 64bits.
Et bus de 20 bits ! Effectivement ca doit etre atypique :)
[^] # Re: L'oeuf ou la poule ?
Posté par Laurent J (site web personnel, Mastodon) . Évalué à 1.
mieux, je ne sais pas. Disons que la syntaxe évoluée qu'ils proposent est différente, et donc on aime ou on aime pas.
Pour ma part, j'avais opter pour une syntaxe qui se rapproche plus de la philosophie C que MASD, si mes souvenirs sont bons.
Et puis aussi pour des expressions plus naturelles, avec priorité des opérateurs etc (ce que ne faisait pas la version MASD de l'epoque) (je ne sais plus si j'avais fait le support des parenthèses)
Un autre truc, assez innovant à l'époque sur HP, c'est que J-Asm pouvait générer des fichiers objets. (Je ne sais plus si MASD permettait de le faire, mais je crois que non). Et donc on pouvait compiler son programme par morceau, et assembler le tout à la fin.
Cela avait l'avantage :
1) de ne pas avoir toutes les sources sur la machine, de ne garder que les fichiers objets des bouts du programmes qui étaient stabilisés
2) d'economiser de la mémoire lors de la compilation
3) de compiler plus rapidement
bref, le truc qui m'a été super utile, surtout quand J-Asm pouvait se compiler lui même. Ca m'économisait beaucoup de temps et de mémoire (je n'avais que seulement 64ko pour compiler et stocker les sources.. ma carte de 128ko, protégée en écriture, contenant tout les outils de dev et le compilateur..).
Hélas, j'ai eu une démotivation sur la fin, d'autres projets, et J-ASM n'en est resté qu'à sa version 0.92 :-/. manquait plus qu'une interface un peu plus conviviale pour en faire une version finale. arg..
tiens, faudrait que je pense à libérer les sources un de ces 4.
[^] # Re: L'oeuf ou la poule ?
Posté par chl (site web personnel) . Évalué à 1.
Oui, si je me souviens bien MASD a toujours ete limité dans l'evaluation des expressions ...
Un autre truc, assez innovant à l'époque sur HP, c'est que J-Asm pouvait générer des fichiers objets.
MASD supporte desormais la generation des objets, je pense meme qu'hpmad a du te piquer ton idee :)
tiens, faudrait que je pense à libérer les sources un de ces 4.
Je tenais a jour une liste de soft libres pour HP4x, tu pourrais me contacter le jour ou tu libere les sources ? Ca m'interesserai :)
En tout cas, merci pour ton J-asm, et aussi merci pour ton Jytris qui etait tres joli ! :)
# Re: L'oeuf ou la poule ?
Posté par Colin Leroy (site web personnel) . Évalué à 1.
http://portal.acm.org/citation.cfm?id=197336&coll=portal&dl(...)
http://www.scifac.ru.ac.za/compilers/cha03g.htm(...)
ça ne parle pas du premier compilateur, mais de comment en faire de nouveaux.
Le premier compilateur est A-0, écrit en langage machine par Grace Hopper et son équipe en 1952:
http://en.wikipedia.org/wiki/Grace_Hopper(...)
http://en.wikipedia.org/wiki/A-0(...)
# Re: L'oeuf ou la poule ?
Posté par Jean Meyrand . Évalué à 2.
000000000010101010100011010111111 ...
(ou plutot des 01 FE 5D ...) : c'est celui que ta machine comprend
après, t as un autre langage qui se traduit presque directement dans le précédent et qui fait
STO, ADD INC ... : l'assembleur
et après t'as des langages structurés, qui sont tous traduits en 0 et en 1 lors de leur exécution.
Bref, le 1e compilateur, il a été écrit directement en binaire (d'ailleurs à l'époque ça devait être des cartes perforées)
[^] # Re: L'oeuf ou la poule ?
Posté par Nap . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par jaroug (site web personnel) . Évalué à 1.
Nan, nan, c'est à la compilation qu'elles sont traduites (les instructions) en 0 et en 1.
# Re: L'oeuf ou la poule ?
Posté par »-(¯`v´¯)-» . Évalué à 1.
/o\
[^] # Re: L'oeuf ou la poule ?
Posté par vincent LECOQ (site web personnel) . Évalué à 1.
# Re: L'oeuf ou la poule ?
Posté par Prae . Évalué à 3.
"<John> Hey! Roger ! c'est toi qu'a merdé sur le bit #342367 paragraphe 8765 ?"
"<Roger> Heu! Au temps pour moi, tu peux le remplacer stp ! ... un bout de scotch ?"
[^] # Re: L'oeuf ou la poule ?
Posté par jaroug (site web personnel) . Évalué à -4.
Autant non ?
[^] # Re: L'oeuf ou la poule ?
Posté par #3588 . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par Prae . Évalué à 1.
- Au temps pour moi
- Autant pour moi.
Même s'il est préférable de prendre la première approche.
# Re: L'oeuf ou la poule ?
Posté par franckladit . Évalué à 1.
[^] # Re: L'oeuf ou la poule ?
Posté par kesako . Évalué à 2.
on a joué a Dieu , quoi :-)
[^] # Re: L'oeuf ou la poule ?
Posté par franckladit . Évalué à 1.
Dieu crée l'Homme.
Avènement de l'Homme.
Dieu décède.
L'homme crée la poule.
La poule crée l'oeuf.
La suite de l'évolution c'est la mort de l'Homme et l'avènement de l'oeuf ???
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.