2010-09-02 7 views
0

Dire maintenant: Oui, c'est les devoirs. Je ne demande pas une réponse, mais j'aimerais toute aide dans une direction générale pour examiner ce problème. Je travaille dessus depuis des heures et je n'ai pas vraiment progressé.Inverse Mappings

Une fonction, avec un inverse bien défini, peut être implémentée pour mapper des entiers de 32 bits sur des entiers de 64 bits. Est-ce que toutes les fonctions de 32bit à 64bit entiers ont des inverses bien définis?

Répondre

2

Bien sûr que non. Prenez la fonction d'identité par exemple. Toutes les valeurs de 32 bits ont une identité dans l'espace de valeur de 64 bits (il suffit d'utiliser 0 dans les 32 bits supérieurs, en utilisant uniquement les 32 bits inférieurs de la valeur). Cependant, toute valeur de 64 bits où les 32 bits supérieurs ne sont pas 0 n'aura pas de valeur correspondante dans l'espace de valeur de 32 bits. Ce qui précède est une explication profane, et n'est probablement pas assez rigoureux comme une solution de devoirs (comme prévu). Vous feriez bien de lire sur le pigeonhole principle.