Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1201 connectés 

  FORUM HardWare.fr
  Programmation
  ASM

  FURAX! int 21h sous fonction 42h

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

FURAX! int 21h sous fonction 42h

n°1188356
flyeric
Posté le 31-08-2005 à 01:11:26  profilanswer
 

:fou: comment décrémenter (de 1, de 2 de x octets) la position du pointeur dans le fichier ouvert en mode 1 (al=1, distance se rapportant à la position actuelle du pointeur)
 
aucune fonction ne donne la position du pointeur...avec cette information j'aurais pu decrementer le mot de poids faible de la position du pointeur, la copier et rebalancer le tout dans int 21h f 42h...mais elle n'existe pas. les fonctions de manipulation de fichier ne donnent que l'adresse du buffer ou sont stockés les octets lus ou écrits...
 
dans la sous fonction 42h,
 
doit-on rentrer dans cx:dx des nombres signés?
quelle valeur de dx pour un déplacement de +1 octet ?
quelle valeur de dx pour un déplacement à l'octet précédent (-1) ? (c'est précisément ce que je recherche)
 
ça m'agace beaucoup...je devrais contimuer mon pgm mais je suis bloqué à cause d'une bétise...en réalité, je suis fou de rage de perdre mon temps pour un détail...
 
merci à caux qui pourront m'aider!

mood
Publicité
Posté le 31-08-2005 à 01:11:26  profilanswer
 

n°1188543
olivthill
Posté le 31-08-2005 à 11:48:40  profilanswer
 

Voici les réponses (source : MS-DOS Encyclopedia, MS Press, 1988, page 1312)

doit-on rentrer dans cx:dx des nombres signés?  

Si l'on veut faire un déplacement à partir du début du fichier (AL=0), alors CX : DX est un entier 32-bit positif. Sinon, pour AL=1 (déplacement à partir de la position courante) ou AL=2 (déplacement à partir de la fin du fichier), CX : DX peut être positif ou négatif.
 

quelle valeur de dx pour un déplacement de +1 octet ?  

DX = 1 et CX = 0.
 

quelle valeur de dx pour un déplacement à l'octet précédent

DX = - 1 et CX = 0.

n°1188549
olivthill
Posté le 31-08-2005 à 11:55:40  profilanswer
 

Réponses complémentaires :
 

aucune fonction ne donne la position du pointeur

Faux. La fonction 42h retourne la position du pointeur dans DX : AX, si on lui donne AL = 1, BX = handle, CX = 0, DX = 0.  :)

n°1188790
flyeric
Posté le 31-08-2005 à 16:27:06  profilanswer
 

merci beaucoup pour la réponse, que j'ai trouvé pendant la nuit d'ailleurs...eh oui, aucuns des ouvrages que j'ai ne mentionne qu'avec cx et dx à 0 (al=1) la fonction nous retourne la position du pointeur...d'autant qu'avec al=2 on obtient le déplacement du pointeur à la fin et en retour la taille du fichier...aucuns sites ne le  précisent non plus quand ils détaillent la fonction 42h...j'aurais peut-être du y penser plus tôt!  
 
en tous cas encore merci pour votre aide!

n°1191496
christophe​_d13
L'efficacité à tout prix.
Posté le 04-09-2005 à 08:44:25  profilanswer
 

On a pourtant la même fonction en C dérivée de la 42h.


Message édité par christophe_d13 le 04-09-2005 à 08:44:48

---------------
http://www.ikalizer.fr
n°1665495
flyeric
Posté le 03-01-2008 à 22:00:42  profilanswer
 

le problème, c'es que le c, je ne le lis pas, je n'ai jamais pu m'y faire... je déteste!  
 
on dirait que le type qui a inventé ce language a utilisé certains signes pour s'en servir de pointer... comme le "+" par exemple...
 
je déteste au plus haut point! (j'préférais le pascal...)
 
je sais, j'suis vieux... mais bon...

n°1665504
FlorentG
Unité de Masse
Posté le 03-01-2008 à 22:18:38  profilanswer
 

TIME PARADOX

n°1665536
Elmoricq
Modérateur
Posté le 03-01-2008 à 23:21:51  profilanswer
 

flyeric a écrit :

on dirait que le type qui a inventé ce language a utilisé certains signes pour s'en servir de pointer... comme le "+" par exemple...


 
[:rofl2][:rofl2][:rofl2]
 

flyeric a écrit :

je déteste au plus haut point! (j'préférais le pascal...)


 
MAIS OUAIS ! [:dawak]
MOI AUSSI JE PREFERE ECRIRE POINTEUR^ QUE *POINTEUR §§§ [:dawak]
 

flyeric a écrit :

je sais, j'suis vieux... mais bon...


T'as pensé à essayer ADA ? [:opus dei]
 
(et au passage, pelle d'or of teh day [:dawa])

n°1665542
Profil sup​primé
Posté le 03-01-2008 à 23:27:19  answer
 


Elmoricq a écrit :


T'as pensé à essayer ADA ? [:opus dei]


 
"Ada" !
 

Spoiler :


C'est pas possible, il faut tout leur dire.


Spoiler :


 [:dawa_neowen]  

n°1689166
christophe​_d13
L'efficacité à tout prix.
Posté le 20-02-2008 à 11:00:31  profilanswer
 

tardis  :love:  
 
Je suis (à la base) programmeur en ASM. Et venir au C a été trés facile pour moi...
 
En rêgle générale, pour la gestion des fichiers c'est un format d'entiers non signés.


Message édité par christophe_d13 le 20-02-2008 à 11:03:05

---------------
http://www.ikalizer.fr

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  ASM

  FURAX! int 21h sous fonction 42h

 

Sujets relatifs
[openGL] fichier wav/ fonction getColor()probleme avec la fonction contains()
fonction recursiveUne fonction qui convertit les SGML ?
De l'aide sur la fonction "Include", s'il vous plait![VBA] Problème avec la fonction shell
[SQL] Mais comment fonctionne la fonction ENCRYPTFonction Autofilter sur les dates
[PHP] Fonction analogue à substr_compare() en PHP4Est ce que Online.net a la fonction ftp activé, telecharger en http
Plus de sujets relatifs à : FURAX! int 21h sous fonction 42h


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR