Responda essa ...  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
Homero Damico
Entusiasta Java

Membro desde: 30/07/2008 14:46:35
Mensagens: 17
Offline

Giulliano wrote:
saoj wrote:
Só a 10 tipos de pessoas no mundo. Os que entendem computação e os que não entendem.


e os outros 8 tipos ?!?!?!?1


saoj 1 x 0 Giulliano

This message was edited 1 time. Last update was at 28/08/2008 13:42:27

thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Giuliano, você não entendeu a piada, já que o número está em binário, não em decimal.

Veja esta camiseta.

http://www.thinkgeek.com/tshirts/frustrations/5aa9/
[WWW]
renan_
Java Ninja

Membro desde: 28/11/2007 23:35:27
Mensagens: 270
Localização: Minas Gerais
Offline

Curiosidade interessante essa da data =)
lgi2020
Virtual Machine Man
[Avatar]

Membro desde: 19/07/2006 10:51:13
Mensagens: 550
Localização: Rio de Janeiro
Offline

Giulliano wrote:
saoj wrote:
Só a 10 tipos de pessoas no mundo. Os que entendem computação e os que não entendem.


e os outros 8 tipos ?!?!?!?1


Preste atenção na base do número...

10 em binário é igual a dois em decimal!!!

:p

Lennon Jesus | CSM | SCJP
http://twitter.com/LennonJesus
[WWW]
saoj
JWizard
[Avatar]

Membro desde: 09/03/2004 23:34:46
Mensagens: 2657
Localização: Chicago, EUA
Offline

Homero Damico wrote:
Giulliano wrote:
saoj wrote:
Só a 10 tipos de pessoas no mundo. Os que entendem computação e os que não entendem.


e os outros 8 tipos ?!?!?!?1


saoj 1 x 0 Giulliano


Eu também bolei na primeira vez que vi essa frase. Para entender números binários não tem muito mistério. Basta decorar o seguinte:

n bits = 2 ^ n possibilidades

1 0 1 0 1 0 1 = 2 ^ 6 + 2 ^ 4 + 2 ^ 2 + 2 ^ 0
6 5 4 3 2 1 0

Em Java:

byte = 8 bits
short = 16 bits
int = 32 bits
long = 64 bits
referencia de objeto = 32 bits (se não estou enganado)

Use a calculadora do windows e seja feliz!

Como a maioria dos CPUs são 32-bits, set e get de variáveis do tipo long podem em teoria dar problemas de race condition em Java. Alguém sabe mais detalhes sobre isso?

This message was edited 1 time. Last update was at 28/08/2008 14:10:01


Sergio A Oliveira Jr. - saoj

ExperiMENTA:

Mentawai = http://www.mentaframework.org - Full-stack Java Web Framework com Configuracão Programática
MentaQueue = http://mentaqueue.soliveirajr.com - Queue de alta-performance.
MentaLog = http://mentalog.soliveirajr.com - Non-intrusive, fast, garbage-less, colored and straightforward logging
MentaBean = http://mentabean.soliveirajr.com - Tiny ORM with SQL Builder
MentaRegex = http://mentaregex.soliveirajr.com - Perl-style regex for Java.
MentaContainer = http://mentacontainer.soliveirajr.com - Straightforward IoC, DI e Auto-Wiring
Space4J = http://www.space4j.org - Banco-de-dados de Objetos em Memória
Options-Lib = https://github.com/saoj/options-lib - Ruby classes para ter acesso as opcoes do Yahoo Finance
Selleto = http://www.selleto.com.br
Flipinion = http://www.flipinion.com
Kawai = http://www.kawaiwiki.org


[Email] [WWW]
André Fonseca
JWizard
[Avatar]

Membro desde: 23/02/2007 15:52:55
Mensagens: 2034
Offline

saoj wrote:
Só a 10 tipos de pessoas no mundo. Os que entendem computação e os que não entendem.


Uma vez eu vi essa frase escrita em um banheiro, abaixo tinha algo escrito assim: "O que você quer dizer com isso? você é burro?" eu acho que ele era um dos 10 tipos que não entende binário..

Você é novo no GUJ?


Como fazer perguntas?



www.twitter.com/_afonseca
lgi2020
Virtual Machine Man
[Avatar]

Membro desde: 19/07/2006 10:51:13
Mensagens: 550
Localização: Rio de Janeiro
Offline

André Fonseca wrote:
saoj wrote:
Só a 10 tipos de pessoas no mundo. Os que entendem computação e os que não entendem.


Uma vez eu vi essa frase escrita em um banheiro, abaixo tinha algo escrito assim: "O que você quer dizer com isso? você é burro?" eu acho que ele era um dos 10 tipos que não entende binário..

Com certeza! :p

Lennon Jesus | CSM | SCJP
http://twitter.com/LennonJesus
[WWW]
ddduran
Virtual Machine Man
[Avatar]

Membro desde: 13/11/2006 16:44:54
Mensagens: 523
Offline

Homero Damico wrote:
Giulliano wrote:
saoj wrote:
Só a 10 tipos de pessoas no mundo. Os que entendem computação e os que não entendem.


e os outros 8 tipos ?!?!?!?1


saoj 1 x 0 Giulliano



Ptz Giulliano não acredito que você caiu nessa velho. Você não é um nerd de verdade?
flaleite
JavaEvangelist

Membro desde: 31/03/2006 15:28:55
Mensagens: 472
Localização: Ribeirão Preto - SP
Offline

Engraçado perceber o que 6h por anos faz diferença...

Calculando como saoj desprezando os anos bisextos dá 194.184 anos a mais que o calculo correto com bissexto...


Flávio Suguimoto
flaleite.blogspot.com
[MSN]
Giulliano
GUJ Master
[Avatar]

Membro desde: 14/11/2006 19:29:38
Mensagens: 1627
Localização: São Paulo
Offline

pô..essa piada é péssima hein....hauhauhauahuhaa...

mas valeu a intenção...

Oracle Certified Master, Java EE 5 Enterprise Architect
Oracle Certified Professional Java Programmer
GiuLLianO MoRRoNi




<UnTouChAbLe>
[Email] [WWW] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

André Fonseca wrote:Uma vez eu vi essa frase escrita em um banheiro, abaixo tinha algo escrito assim: "O que você quer dizer com isso? você é burro?" eu acho que ele era um dos 10 tipos que não entende binário..


Então ela era 01 tipo que não entende binário, porque o outro entende.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline


Como a maioria dos CPUs são 32-bits, set e get de variáveis do tipo long podem em teoria dar problemas de race condition em Java. Alguém sabe mais detalhes sobre isso?


Se a variável do tipo long estiver em um endereço que não é múltiplo de 8, o que não costuma ocorrer porque o JIT tenta deixá-la em um endereço múltiplo de 8, isso poderia ocorrer sim, mas o correto é usar java.util.concurrent.AtomicLong se você estiver realmente preocupado com isso. As CPUs modernas, mesmo trabalhando em modo de 32 bits, não costumam recuperar dados da memória em pedaços menores que 64 bits, mesmo que você não perceba isso ao nível da linguagem de máquina.
[WWW]
saoj
JWizard
[Avatar]

Membro desde: 09/03/2004 23:34:46
Mensagens: 2657
Localização: Chicago, EUA
Offline

thingol wrote:

Como a maioria dos CPUs são 32-bits, set e get de variáveis do tipo long podem em teoria dar problemas de race condition em Java. Alguém sabe mais detalhes sobre isso?


Se a variável do tipo long estiver em um endereço que não é múltiplo de 8, o que não costuma ocorrer porque o JIT tenta deixá-la em um endereço múltiplo de 8, isso poderia ocorrer sim, mas o correto é usar java.util.concurrent.AtomicLong se você estiver realmente preocupado com isso. As CPUs modernas, mesmo trabalhando em modo de 32 bits, não costumam recuperar dados da memória em pedaços menores que 64 bits, mesmo que você não perceba isso ao nível da linguagem de máquina.


A especificação do Tiger fala para vc usar volatile sempre que um thread altera e outro lê a variável, caso contrário cada um terá o seu próprio cache de variáveis e um não vai ver a mudança que o outro fez. Se não estou enganado esse cache acontece no registers da CPU, logo se vc tem apenas uma CPU esse problema NUNCA vai acontecer e vc não precisaria usar volatile. Isso porque sempre que entra um novo thread o contexto (cache) é substituído pelo novo contexto do thread que está entrando. Se vc tem duas CPUs e cada thread está rodando numa CPU então vc pode ter problemas sérios, uma vez que vc tem agora 2 caches distintos.

A questão do long é que independente do cache pode haver um context switch no meio de um get ou set, uma vez que é impossível ler 64-bits atomicamente num único tick do clock. Se isso acontece, a JVM garante ou não a integridade da variável? Nunca soube, acredito que sim, mas tb não sei como. :-)


This message was edited 3 times. Last update was at 28/08/2008 17:09:39

[Email] [WWW]
Weber MK
Thread.start()
[Avatar]

Membro desde: 28/06/2007 17:37:11
Mensagens: 35
Offline

ddduran wrote:
Homero Damico wrote:
Giulliano wrote:
saoj wrote:
Só a 10 tipos de pessoas no mundo. Os que entendem computação e os que não entendem.


e os outros 8 tipos ?!?!?!?1


saoj 1 x 0 Giulliano



Ptz Giulliano não acredito que você caiu nessa velho. Você não é um nerd de verdade?



Poxa... tb não acredito... hehehe
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team