Partage
  • Partager sur Facebook
  • Partager sur Twitter

utiliser la fonction malloc()

un exemple concret, propre?

Sujet résolu
Anonyme
    27 février 2006 à 0:57:32

    ...en plus en français on ne fait pas la différence entre byte et octet ; en C un byte c'est une unité de taille de mémoire d'au moins 8 bits qui divise toutes les autres tailles d'objets possibles et un octet c'est 8 bits.
    ->Il n'y a aucune diférence a faire, c'est la même chose...

    Avouez qu'entre Byte et byte, y a pas un monde -_- on est en France, merde.
    ->C'est de sa que je parle. Il dit qu'il n'y a aucune diférence entre A et A. Ce n'est pas ce qu'il cherchais a dire a mon avis...
    • Partager sur Facebook
    • Partager sur Twitter
      27 février 2006 à 1:01:14

      Citation : JC_Master

      ...en plus en français on ne fait pas la différence entre byte et octet ; en C un byte c'est une unité de taille de mémoire d'au moins 8 bits qui divise toutes les autres tailles d'objets possibles et un octet c'est 8 bits.
      ->Il n'y a aucune diférence a faire, c'est la même chose...


      Bon t'es gentil mais quand on n'a pas lu le standard et qu'on ne sait pas de quoi on parle on ne parle pas ; un byte en C peut valoir 9 bits, c'est standard ; cherche pas...

      Citation : std

      A byte is composed of a contiguous sequence of bits, the number of which is implementationdefined.


      • Partager sur Facebook
      • Partager sur Twitter
        27 février 2006 à 8:06:22

        Citation : Araya

        nan, byte signifie seulement octet(B), et bit signifie bit(b).

        ++

        Oé, donc en fait,
        Byte -> octet
        Bit -> bit

        c'ça?
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          27 février 2006 à 11:27:42

          Oui

          Rzo -> Un byte peut valoir 9 Bits?! o_O
          Bon ben je vien d'apprendre quelque chose...

          cherche pas...
          -> Si justement! Comment peut on faire des sequances de 9bits?! Je croillait que le pc ne fonctionait que par tranche de 8 bits(d'ou la restriction d'écriture en mode binaire)

          Edit: Dsl, je voulais mêtre sequance, pas segment.. Sa n'a pas tout a fait le même sens XD
          • Partager sur Facebook
          • Partager sur Twitter
            27 février 2006 à 11:39:42

            Un PC (au sens IBM-compatible) oui, une machine pas forcément ; il y a un tas de plateformes et d'ordinateurs dans le monde, le C est très portable, faut pas l'oublier, il sert aussi bien à programmer des automates que des ordinateurs individuels que... Faut pas se restreindre à penser que toutes les machines fonctionnent en bytes de 8 bits.
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              27 février 2006 à 15:22:24

              Aaaaaa...... Donc, quand on fait >> 8 ou << 8 ce n'est pas portable? Il faudrias utiliser << sizeof(char) ?
              • Partager sur Facebook
              • Partager sur Twitter
                27 février 2006 à 16:09:54

                A la différence près que sizeof(char) renvoie 1, pas 8...
                • Partager sur Facebook
                • Partager sur Twitter

                If you'd like to join us, read "How do we work at OpenClassrooms"! :)

                Anonyme
                  27 février 2006 à 16:56:10

                  A oui c'est vrai.... Donc commetn on fait pour conaitre la taille en bits d'un byte ?
                  • Partager sur Facebook
                  • Partager sur Twitter
                    27 février 2006 à 17:05:32

                    On peut pas en C. Et c'est volontaire : on dit que le langage C est de "haut niveau" car on fait abstraction du fait qu'il y a des bits dans un byte.

                    Tu peux très bien coder en C sans savoir qu'un byte est constitué de bits : c'est volontaire.

                    Y'a des langages encore plus haut niveau que le C, comme le Java, où là t'as besoin de savoir encore moins de choses (t'as pas vraiment besoin de savoir comment fonctionne une mémoire ni de savoir qu'il y a des adresses).
                    • Partager sur Facebook
                    • Partager sur Twitter

                    If you'd like to join us, read "How do we work at OpenClassrooms"! :)

                      27 février 2006 à 17:19:14

                      On peut utiliser la constante prédéfinie CHAR_BIT dans limits.h pour connaître le nombre de bit d'un char.

                      ++
                      • Partager sur Facebook
                      • Partager sur Twitter
                        27 février 2006 à 20:16:21

                        Citation : M@teo21

                        On peut pas en C. Et c'est volontaire : on dit que le langage C est de "haut niveau" car on fait abstraction du fait qu'il y a des bits dans un byte.

                        Tu peux très bien coder en C sans savoir qu'un byte est constitué de bits : c'est volontaire.

                        Y'a des langages encore plus haut niveau que le C, comme le Java, où là t'as besoin de savoir encore moins de choses (t'as pas vraiment besoin de savoir comment fonctionne une mémoire ni de savoir qu'il y a des adresses).



                        Ca ne pose pas un problème lorsqu'on alloue de la mémoire dans un programme très précis ? :euh:

                        <HS> Au fait puisqu'on parle de mémoire, sauriez-vous que sont les registres par rapport à la RAM en assembleur ? Merci d'avance. </HS>

                        ++.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          27 février 2006 à 20:20:10

                          Les registres sont des mémoires qui entourent le processeur et qui l'aide à savoir ou chercher les instructions, ou à stocker des résultats de calculs, ce sont des mémoires avec un temps d'accès très très court :p
                          • Partager sur Facebook
                          • Partager sur Twitter
                          Anonyme
                            27 février 2006 à 20:27:47

                            Oui, et elles sont localiser physiquement dedan le processeur. Le processeur ne peut effectuer des operations que sur ces registres(Enfin, c'est ce que j'ai lut).

                            Sinon, parfois il est nésésaire de conaitre le nombre de bits(Quand on veut faire de la manipulation binaire, avec par exemple des algorithmes de cryptographie, de compression ect...)
                            • Partager sur Facebook
                            • Partager sur Twitter
                              27 février 2006 à 21:00:18

                              Je crois que chaque registre est de 16 bits.

                              En tout cas merci à vous deux.

                              Mais bon là on s'écarte bien du sujet du topic donc arrêtons nous là.

                              ++.
                              • Partager sur Facebook
                              • Partager sur Twitter
                              Anonyme
                                27 février 2006 à 23:04:59

                                Sa varis selont les processeurs. Certains registre on été augmenter sur els processeurs intel : ax est devenu eax.
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  28 février 2006 à 12:41:21

                                  ... codé sur 32 bits. Okay.

                                  Merci !

                                  ++.
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                  Anonyme
                                    28 février 2006 à 13:42:31

                                    Eu.. je sais plus, je crois qu'a la base ea fait 8 bits, eax fait 16, et une autre amélioration les a passer a 32...
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      28 février 2006 à 13:51:58

                                      Citation : ccm

                                      EAX (32 bits)
                                      AX (16 bits)
                                      AH (8 bits) | AL (8 bits)

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                      Anonyme
                                        28 février 2006 à 14:30:54

                                        A ok :D La c'est plus claire ;)
                                        • Partager sur Facebook
                                        • Partager sur Twitter

                                        utiliser la fonction malloc()

                                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                        • Editeur
                                        • Markdown