bhavacakra Posted April 7, 2007 Report Posted April 7, 2007 Am o problema legata de sintaxa masm. Problema e ca vreau sa incarc continutul unei variabile in registrul eax, nimic mai simplu:int main(void) {int i;__asm { mov eax,[i];}return EXIT_SUCCESS;}Probleme apar cand vreau sa umplu un registru cu valoarea unei variabile care nu are are aceeasi dimensiune ca registrul in cauza. Stiu ca masm cunoaste instructiuni de padding ca TYPE, dar nu e de gasit un exemplu concret. Bineintelex ca vreau ca daca am un char c=7; si eax = 0xCCCCCCCC, si apoi fac (teoretic, practic va da eroare) unmov eax,[c]nu vreau sa am in eax apoi 0xCCCCCC07, ci sa dea automat 0-padding - presimt ca exista o posibilitate sintactica in masm pentru acest lucru, un fel de "casting" - in afara de smecheria cu xor eax,eax. Quote
bhavacakra Posted April 7, 2007 Author Report Posted April 7, 2007 am gasit, exista instructiuneamovzx Quote