Giter Club home page Giter Club logo

jvm-sb's People

Contributors

dayof avatar gabrielalmeidaa avatar marcusborges1 avatar patricia-777 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

jvm-sb's Issues

Leitor/Exibidor

  • Patrícia
Tipo Constant Pool Attribute Field Method
String
Inteiro
Array Unidimensional
  • Marcus
Tipo Constant Pool Attribute Field Method
Simulação de impressão
Arrays multidimensionais
Float
  • Leonardo
Tipo Constant Pool Attribute Field Method
Double
Herança
Reescrita
  • Gabriel
Tipo Constant Pool Attribute Field Method
Métodos estáticos
Atributos de classe
Polimorfismo
  • Dayanne
Tipo Constant Pool Attribute Field Method
Métodos dinâmicos
Atributos de instância
Objetos

Obs.: Para marcar um tipo de dado completo edite esta issue, não só marque o item com clique.

ÚLTIMA ENTREGA

Corretude do interpretador

  • array simples
  • arrays.length
  • arrays multidimensionais
  • arrays de referencia
  • doubles
  • floats (rodou apenas float_aritmetica)
  • longs
  • inteiros
  • shorts
  • strings
  • desvios com cat 1
  • operacoes logicas com cat 1
  • operacoes de deslocamento com cat 1
  • operacoes aritmeticas de cat 2
  • operacoes de deslocamento de longs
  • system.out.println (int, float, string e booleano)
  • conversao de e para cat 2
  • iteracao e case
  • fields
  • interfaces
  • recursao
  • metodos estaticos
  • metodos nao estaticos
  • objetos
  • operacoes de retorno
  • operacoes de manipulacao de pilha
  • consistencia
  • exceptions

Bonus: 10% (bonus sobre a corretude do interpretador)

Opcionais, todas as demais instruções:

  • threads

  • debug

  • chamadas às bibliotecas do Java

  • checagem dinâmica de tipos

  • coletor de lixo.

  • Atribuição de nota para o interpretador:

0,1*leitor_exibidor + 0,4*corretude + 0,4*defesa do interpretador + 0,1*site

Leitura do formato .class:

  • Trata versões superiores?

    • teste com arquivo vetor2-java6
    • java 7 versão 51 no major version
  • Despreza silenciosamente atributos não tratados?

  • Consistência?

    • testa cafebabe
    • checa classe vs arquivo
    • testa case
  • Corretude?

    • tratar índices de dois bytes parêmetro de instrução (exibidor)
    • trata corretamente índices de goto (exibidor)
  • Exibe mnemônicos?

    • redireciona os indices para o CP
  • Apresenta reindireção das entradas no Constant Pool?

    • numeração em decimal em vez de hexadecimal nos primeiros 19 slots do CP do vetor .class
  • Melhorar > nota: 1,5 * 100 / 6 = 25

Site

  • Apresenta o DCM e a descrição de cada função?
  • Contem a relação das estruturas de dados e os arquivos?
  • Está atualizado?
  • Corretude

Instruções

  • aaload
  • aastore
  • aconst_null
  • aload
  • aload_0 = 42 (0x2a)
  • aload_1 = 43 (0x2b)
  • aload_2 = 44 (0x2c)
  • aload_3 = 45 (0x2d)
  • anewarray
  • areturn
  • arraylength
  • astore
  • astore_0 = 75 (0x4b)
  • astore_1 = 76 (0x4c)
  • astore_2 = 77 (0x4d)
  • astore_3 = 78 (0x4e)
  • athrow
  • baload
  • bastore
  • bipush
  • caload
  • castore
  • checkcast
  • d2f
  • d2i
  • d2l
  • dadd
  • daload
  • dastore
  • dcmpg = 152 (0x98)
  • dcmpl = 151 (0x97)
  • dconst_0 = 14 (0xe)
  • dconst_1 = 15 (0xf)
  • ddiv
  • dload
  • dload_0 = 38 (0x26)
  • dload_1 = 39 (0x27)
  • dload_2 = 40 (0x28)
  • dload_3 = 41 (0x29)
  • dmul
  • dneg
  • drem
  • dreturn
  • dstore
  • dstore_0 = 71 (0x47)
  • dstore_1 = 72 (0x48)
  • dstore_2 = 73 (0x49)
  • dstore_3 = 74 (0x4a)
  • dsub
  • dup
  • dup_x1
  • dup_x2
  • dup2
  • dup2_x1
  • dup2_x2
  • f2d
  • f2i
  • f2l
  • fadd
  • faload
  • fastore
  • fcmpg = 150 (0x96)
  • fcmpl = 149 (0x95)
  • fconst_0 = 11 (0xb)
  • fconst_1 = 12 (0xc)
  • fconst_2 = 13 (0xd)
  • fdiv
  • fload
  • fload_0 = 34 (0x22)
  • fload_1 = 35 (0x23)
  • fload_2 = 36 (0x24)
  • fload_3 = 37 (0x25)
  • fmul
  • fneg
  • frem
  • freturn
  • fstore
  • fstore_0 = 67 (0x43)
  • fstore_1 = 68 (0x44)
  • fstore_2 = 69 (0x45)
  • fstore_3 = 70 (0x46)
  • fsub
  • getfield
  • getstatic
  • goto
  • goto_w
  • i2b
  • i2c
  • i2d
  • i2f
  • i2l
  • i2s
  • iadd
  • iaload
  • iand
  • iastore
  • iconst_m1 = 2 (0x2)
  • iconst_0 = 3 (0x3)
  • iconst_1 = 4 (0x4)
  • iconst_2 = 5 (0x5)
  • iconst_3 = 6 (0x6)
  • iconst_4 = 7 (0x7)
  • iconst_5 = 8 (0x8)
  • idiv
  • if_acmpeq = 165 (0xa5)
  • if_acmpne = 166 (0xa6)
  • if_icmpeq = 159 (0x9f)
  • if_icmpne = 160 (0xa0)
  • if_icmplt = 161 (0xa1)
  • if_icmpge = 162 (0xa2)
  • if_icmpgt = 163 (0xa3)
  • if_icmple = 164 (0xa4)
  • ifeq = 153 (0x99)
  • ifne = 154 (0x9a)
  • iflt = 155 (0x9b)
  • ifge = 156 (0x9c)
  • ifgt = 157 (0x9d)
  • ifle = 158 (0x9e)
  • ifnonnull
  • ifnull
  • iinc
  • iload
  • iload_0 = 26 (0x1a)
  • iload_1 = 27 (0x1b)
  • iload_2 = 28 (0x1c)
  • iload_3 = 29 (0x1d)
  • imul
  • ineg
  • instanceof
  • invokedynamic
  • invokeinterface
  • invokespecial
  • invokestatic
  • invokevirtual
  • ior
  • irem
  • ireturn
  • ishl
  • ishr
  • istore
  • istore_0 = 59 (0x3b)
  • istore_1 = 60 (0x3c)
  • istore_2 = 61 (0x3d)
  • istore_3 = 62 (0x3e)
  • isub
  • iushr
  • ixor
  • jsr
  • jsr_w
  • l2d
  • l2f
  • l2i
  • ladd
  • laload
  • land
  • lastore
  • lcmp
  • lconst_0 = 9 (0x9)
  • lconst_1 = 10 (0xa)
  • ldc
  • ldc_w
  • ldc2_w
  • ldiv
  • lload
  • lload_0 = 30 (0x1e)
  • lload_1 = 31 (0x1f)
  • lload_2 = 32 (0x20)
  • lload_3 = 33 (0x21)
  • lmul
  • lneg
  • lookupswitch
  • lor
  • lrem
  • lreturn
  • lshl
  • lshr
  • lstore
  • lstore_0 = 63 (0x3f)
  • lstore_1 = 64 (0x40)
  • lstore_2 = 65 (0x41)
  • lstore_3 = 66 (0x42)
  • lsub
  • lushr
  • lxor
  • monitorenter
  • monitorexit
  • multianewarray
  • new
  • newarray
  • nop
  • pop
  • pop2
  • putfield
  • putstatic
  • ret
  • return
  • saload
  • sastore
  • sipush
  • swap
  • tableswitch
  • wide

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.