Je suis un peu nouveau dans la programmation et la meilleure façon de poser cette question est avec un exemple.
Je sais comment faire des choses basiques en Java et C #. Des choses comme une petite application Windows Forms ou faire une classe générique. J'ai essentiellement appris et je n'ai encore rien fait de grand. Quoi qu'il en soit, j'ai toujours été curieux de savoir comment les choses se font "sous le capot", je suppose que vous pourriez dire.
Je sais que tout se résume à 1 et à 0 et que les langages d'assemblage donnent essentiellement des commandes aux modèles de 1 et de 0, mais il semble qu'il y ait ce saut à partir de là: utiliser une bibliothèque pour cela une bibliothèque pour cela. Il me semble que tout ce que C # peut faire sans bibliothèque est une logique arithmétique et binaire. Pour obtenir des entrées ou des sorties, vous utilisez des bibliothèques, etc ...
Je sais que cette question semble probablement évidente pour certains et je sais que j'ai beaucoup à apprendre, mais je ne sais même pas par où commencer avec une question comme celle-ci. Je vous remercie.
Voici donc ma question:
Si quelqu'un devait créer une machine virtuelle ou un émulateur Playstation, ou un système d'exploitation, ou un pilote, ou ajouter un support mp3 à un lecteur multimédia, ou créer votre propre type de fichier, etc ... Comment? Je ne vois pas comment cela se ferait avec C # ou Java.
En d'autres termes, si je lis un livre comme Professional C # de WROX ou Programming C # de OReilly, saurais-je faire ces choses? Ou devez-vous apprendre le langage d'assemblage ou quelque chose de plus bas niveau comme C ++?