Taille d'une variable de type "WORD" - Delphi/Pascal - Programmation
Marsh Posté le 02-05-2003 à 15:15:26
word = 2 octets (sur PC), soit une plage de valeurs allant de 0 à 65535 (non signé) ou de -32768 à + 32768 (signé) 
 
Si ça ne te suffit pas, tu as le dword (4 octets, de 0 à 16777216 en non signé), ou le qword (8 octets).
Marsh Posté le 02-05-2003 à 15:21:54
| Harkonnen a écrit : word = 2 octets (sur PC), soit une plage de valeurs allant de 0 à 65535 (non signé) ou de -32768 à + 32768 (signé)   | 
 
 
perdu harko  
  
 
-32768 à +32767 
 
tu devrais avoir honte  
  
 
Marsh Posté le 02-05-2003 à 15:22:34
hum ... 
 
Il me met : "Unknown identifier." 
 
je fais un sp_adt : dword; a la place de sp_adt : word; 
 
Normal ?  
 
Marsh Posté le 02-05-2003 à 15:22:56
bahhhhhhh tu as bu ? 
 
un mot de 32bits ça s'arrête pas à 16M  
 
Marsh Posté le 02-05-2003 à 15:30:31
hum ... 
 
Il me met : "Unknown identifier." 
 
je fais un sp_adt : dword; a la place de sp_adt : word; 
 
Normal ?  
  
 
-> Pareil avec qword <-
Marsh Posté le 02-05-2003 à 15:30:33
| BJOne a écrit :    | 
 
ah merde 
 
j'avais fait un copier/coller et j'ai oublié de rectifier le 8 en 7 , idiot que je suis ![]()
Marsh Posté le 02-05-2003 à 15:32:43
| BJOne a écrit : bahhhhhhh tu as bu ?   | 
 
 
mais ça va pas moi hein !!! 
 
je rectifie : 32 bits => de 0 à 4 294 967 296 en non signé !!! 
 
de 0 à 16 777 216 c'est 24 bits !
Marsh Posté le 02-05-2003 à 15:33:50
| mesta a écrit : Oui mais ca ne repond pas a ma question   | 
t'utilises quoi comme assembleur ?
Marsh Posté le 02-05-2003 à 15:35:28
En fait, a la base c'est du pascal, mais les procedure sont en ASM. Je compile avec turbo pascal 7
Marsh Posté le 02-05-2003 à 15:47:44
1 octet (type SHORTINT ou BYTE), 2 octets (type INTEGER ou WORD) ou 4 octets (type LONGINT) alors qu'un réel est stocké sur 4 octets (type SINGLE), 6 octets (type REAL), 8 octets (type DOUBLE) ou 10 octets (type EXTENDED). 
 
Merci ![]()
Marsh Posté le 02-05-2003 à 16:00:35
les types DWord n'étant pas un type Pascal (c'est LongWord ou Cardinal), il n'est pas connu du compilateur. Il faut inclure la unit "Windows" 
Sinon dans l'aide à la rubrique "Integer types" t'auras la liste des types. 
 
Par contre Word devrait être reconnu
Marsh Posté le 02-05-2003 à 16:02:31
antp> oui desole je mettais trompé de section 
 
 
J'ai donc reussi a modifier la variable sp_adt, mais maintenant j'ai un autre probleme 
 quand je remplace la variable WORD par un LONGINT ou SINGLE ou ... a un autre endroit jai une erreur :  
PUSH scan.sp_adt; 
Invalid combinaisonof opcode and operands. 
 
Cette erreur me surprend pas mais comment puis-je faire .. 
 
 
(C du pascal avec des procedures en ASM)
Marsh Posté le 02-05-2003 à 16:02:37
| mesta a écrit :  6 octets (type REAL)   | 
 
 
dans le vieux Pascal oui, maintenant Real = Double. 
pour avoir ce type sur 6 octets c'est Real48 le type à utiliser (enfin, vaut mieux pas l'utiliser en général 
)
Marsh Posté le 02-05-2003 à 16:08:40
| mesta a écrit :    | 
 
ce que tu peux faire : à l'intérieur de ton code Pascal, tu stockes la valeur de scan.sp_adt dans une variable, disons theVariable 
 
puis, dans ton code en asm : 
 
PUSH theVariable 
(...) 
POP theVariable
Marsh Posté le 02-05-2003 à 16:11:41
| Harkonnen a écrit :    | 
 
 
allez avoue rhum ou vodka ? 
(je suis rhum, j'ai de la famille qui a une distillerie à marie-galante 
)
Marsh Posté le 02-05-2003 à 16:12:56
en fait, c'est vodka-rhum 
 
(tu m'invites quand chez ta famille ?  
 )
Marsh Posté le 02-05-2003 à 16:15:39
Je donne kel type a theVariable ?? Parce que ca reviendra au meme si je met le meme type que sp_adt ![]()
Marsh Posté le 02-05-2003 à 16:29:53
| Harkonnen a écrit : en fait, c'est vodka-rhum   | 
 
 
héhé en ce moment presqie à chaque que je vais chez un pote, je crame une bouteille  
 
Marsh Posté le 03-05-2003 à 15:04:01
| Harkonnen a écrit :    | 
 
 
Je lui donne kel type a la variable theVariable?  
Ca reviendra au meme si je met le meme type que sp_adt (soit WORD) ! 
Marsh Posté le 02-05-2003 à 15:06:15
Bonjour,
Je voudrais savoir la taille maximum que l'on peut mettre dans une variable de type WORD. Et quel autre type de variable puis-je utiliser si la taille n'est pas suffisante ?
Merci.
Message édité par mesta le 02-05-2003 à 15:56:33