🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.java
Article #153928

Re: przesunięcie biotwe w Java - dziwny błąd

#153928
From: Sc0rpi0
Date: Sat, 02 Nov 2013 06:37
30 lines
1813 bytes
> Mam takie wyrażenie:
>
> short w = (short) (((byte)dana) << x);

> ... String.format("%04X",w);
>
> jeżeli dana zawiera (byte) 0x88
>
> a x = 5
>
> to otrzymuję F100
>
> zamiast 1100
>

>ach! x to int.

Akurat to nieistotne czy x to int bo to przesunięcie - natomiast co do danej 
cokolwiek mniejszego od inta jest zamieniane na int przy uzyciu operatora 
<<, więc (byte) w tym miejscu i tak nie ma sensu, a wynik w tym przykładzie 
też jest intem. Poza tym jeżeli tak by to miało być jak w zamierzeniu (wg 
mojego przypuszczenia) to wynik powinien być 0 a nie 0x1100 (byte ma 8 bitow 
ze znakiem). Żeby zrobić to co wydaje mi się, że miało być to:

short w = (short)(byte)(dana<<x);

z wynikiem 0, a aby dostać 0x1100 to po prostu:

short w = (short)(dana<<x);
Technical Details
Message-ID: <l52699$aiq$1@news.agh.edu.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!.POSTED!not-for-mail
References: <fb7c6605-2b1d-4241-8bed-9caf7952f21f@googlegroups.com> <1ad891af-ba67-44c5-8f1a-294cb9f42db1@googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!.POSTED!not-for-mail
From: "Sc0rpi0" <sc[zero]rpi[zero]@scosys[dot]eu.org>
Newsgroups: pl.comp.lang.java
Subject: Re: przesunięcie biotwe w Java - dziwny
 błąd
Date: Sat, 2 Nov 2013 07:37:43 +0100
Organization: AGH
Lines: 33
Message-ID: <l52699$aiq$1@news.agh.edu.pl>
References: <fb7c6605-2b1d-4241-8bed-9caf7952f21f@googlegroups.com> <1ad891af-ba67-44c5-8f1a-294cb9f42db1@googlegroups.com>
NNTP-Posting-Host: rap.fema.krakow.pl
X-Trace: news.agh.edu.pl 1383373929 10842 195.150.11.173 (2 Nov 2013 06:32:09 GMT)
X-Complaints-To: abuse@agh.edu.pl
NNTP-Posting-Date: Sat, 2 Nov 2013 06:32:09 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-RFC2646: Format=Flowed; Original
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit