«« ( Date ) »» // «« ( Thread ) »» // ri4pp - 2005

Re: Stupid Java & CR LF

by Marko Ninkovic
nedelja, 26. jun 2005 - 23:19.

Je l' si probao da vidis sta stoji u generisanom fajlu na tom mestu ?
Probaj sa necim trecim, sto nije ni C++, ni MJVM.
Tako ces znati da li je u fajl upisano 10 ili 13,10, te da li je greska pri upisu ili pri citanju.


Dana Sun, 26 Jun 2005 19:58:51 +0200, Dejan Milosevic <dezy@infosky.net> napisa:

Testiro sam ga do maximuma. buf[] niz pre upisa u fajl je skroz OK (gledam
ga u debug-u). Ako nakon upisa procitam fajl preko C++ procita ga OK
(identicno kao sto je bio niz buf[]). Ali kad pokrenem MJVM...eto sranja.
Nece pa nece. Za bilo koje druge vrednosti (6,9,11,500) radi skroz kako
treba ali za 10 stalno cita 13 pa 10 (to vidim jer ukljucim -debug kad
pozivam MJVM). Slede dokazi...

evo izlaza za i=10:

pos: instruction operands
| expressionstack
-----------------------------
0: const 13
| 13
5: store_3
|
6: store_0
-- exception at address 6: expression stack underflow
(store_3 je bajtkod 10)

a evo izlaza za i=11:
pos: instruction operands
| expressionstack
-----------------------------
0: const 11
| 11
5: store_0
|
6: return

Ovo me mnogo vise jebe prilikom skokova jer on sam generise skok +10 ako mu
treba (a to je po Marfiju najcesci slucaj) pa ga MJVM procita kao skok +13,
10 (store_3).

----- Original Message -----
From: "Zeljko Nase" <ZNase@Sezampro.yu>
To: <ri4pp@titan.etf.bg.ac.yu>
Sent: Sunday, June 26, 2005 12:12 PM
Subject: Re: [ri4pp] Stupid Java & CR LF


JEdono sto mi pada na pamet je da mozda koristis pogresnu f-ju za unos.
Proveri
da li stavljas bajt sa Code.put, a ne sa Code.put2.

Poz
ZNase Co.


6/26/05 11:28:40 AM, "Marko Ninkovic" <ninchagora@beotel.yu> wrote:

>Evo, ja sam probao.
>Kod mene radi, ako se doda return. (Bez return javlja
ArrayIndexOutOfBoundsException, jer je pc probio codeSize).
>
>Nije mi jasno zasto bi neka klasa iz Jave (FileInputStream,
DataInputStream)
interpretirala bajt 10 kao 13,10.
>Je l' si siguran da nije greska prilikom upisa u fajl ?
>
>Dana Sun, 26 Jun 2005 10:33:26 +0200, Dejan Milosevic <dezy@infosky.net>
napisa:
>
>> Neverovatno ali istinito!
>> Kad upisem u code broj 10 (bez obzira na sta se odnosilo (const ili
>> naredba)) MJVM se napravi pametna i procita taj char 10 kao (char 13,
char
>> 10).
>> Jos je Vuk govorio 'citaj kako je napisano'...
>>
>> Kako da resim ovaj problem?
>>
>> Ko ne veruje neka proba jednostavan primer:
>>
>> class glavna
>> int i ;
>> { void main() {i=10;}
>> }
>>
>> -----------------------------------------------------------------
>> unsubscribe:
>> minimalist@titan.etf.bg.ac.yu?subject=unsubscribe%20ri4pp
>> -----------------------------------------------------------------
>>
>>
>
>-----------------------------------------------------------------
>unsubscribe:
> minimalist@titan.etf.bg.ac.yu?subject=unsubscribe%20ri4pp
>-----------------------------------------------------------------
>
>
>

-----------------------------------------------------------------
unsubscribe:
minimalist@titan.etf.bg.ac.yu?subject=unsubscribe%20ri4pp
-----------------------------------------------------------------

-----------------------------------------------------------------
unsubscribe:
minimalist@titan.etf.bg.ac.yu?subject=unsubscribe%20ri4pp
-----------------------------------------------------------------