Pokaż wyniki 1 do 2 z 2

Temat: Rejestr CS i dziwne wartości

  1. #1

    Domyślnie Rejestr CS i dziwne wartości

    Na początek podam kod:

    Kod:
    mov eax,cs
    push eax
    
    lea eax,[esp]
    push eax
    
    call format1
    db "%x",0xa,0
    format1:
    call [ebx+3*4]      <-  Pointer na funkcję printf (c++)
    ret
    ---------------------
    Funkcja zwraca mi różne wartości od tych które zwraca mi debbugger
    I.E Raz debbugger mi wypisał że program został załadowany na 0xb7704100
    Tylko że program zwrócił mi 0xbfccb348
    ?
    Jakieś logiczne objaśnienie?
    Z góry dziękuję.

  2. #2

    Domyślnie

    CS jest 16bit a Ty wypychasz 32bit (EAX). Może zdejmują się jakieś nadmiarowe bity ?

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj