Sistemi cooperativi e reti sociali

Docente: Maurizio Talamo

Comunicazioni

10-04-2017 15:07

Esercizio assegnato in classe: convertire in javascript il seguente codice C++

 

unsigned long long my_crc64 ( unsigned long long crc, const void *in_data, const unsigned long long len )

{

    const unsigned char *data = ( const unsigned char * ) in_data;

    bool bit;

    

    for ( unsigned long long offset = 0; offset < len; offset++ ) {

        unsigned char c = data[offset];

        for ( unsigned char i = 0x01; i & 0xff; i <<= 1 ) {

            bit = crc & 0x8000000000000000ULL;

            if ( c & i ) {

                bit = !bit;

            }

            

            crc <<= 1;

            if ( bit ) {

                crc ^= 0xad93d23594c935a9ULL;

            }

        }

        

        crc &= 0xffffffffffffffff;

    }

    

    crc = crc & 0xffffffffffffffff;

    

    unsigned long long lldata = crc;

    unsigned long long ret = lldata & 0x01;

    

    for ( size_t i = 1; i < 64; i++ ) {

        lldata >>= 1;

        ret = ( ret << 1 ) | ( lldata & 0x01 );

    }

    

    return ret ^ 0x0000000000000000;

}

 

Esempi di computazione:

CRC64 di: kkpakcctdxcbzkitqkhpjuxzjkkmglic: 3594633785453865608()

CRC64 di: htowzggrwbcnluckharxmpkdavtdebxa: 1704445542257955362()

CRC64 di: dtgmlpqpuequujpdapakyqgmjoicfiej: 1895484199786374598()

CRC64 di: zduyqawzaktxytnlgcpvtvmurifzyfct: 6381756506976712854()

CRC64 di: jdjglslcrlljzuxcfylxrurvoypazzgx: 15446683081727556501()

CRC64 di: voklxqugmpakrkjpfwookkbgkmaamxfb: 9227563173987463235()

CRC64 di: ixjdfcjldfpjdbhywvmzdnazxsywolkb: 14728132559841017834()

CRC64 di: dercabqqaoupzvxknokfgsialjywsvse: 16340863424746917193()

CRC64 di: jzaxtfpuenzgnmfiuojpbqasdhcwnjvx: 10614787097834288068()

CRC64 di: ejqjohhgcytacuwmxbnnhxjzvfafahmo: 3323273454950163853()

CRC64 di: yooptqwtujgnuxkcmowkvkpgntixyjeq: 17616056958525969818()

CRC64 di: tbkisjbfqttfquuuyfgdugdhehszniyv: 11124967955339586091()

CRC64 di: jribhnnqelaufeqeajtfgclbafabveyq: 11310178939542944195()

CRC64 di: cdcmopfichiltgpafghqjbetwlxkpdao: 12447702742421294748()

CRC64 di: dvystytqcwkagjgnrjnyozldmhflrapp: 3768242662732765846()

CRC64 di: eumzriwndwkmwaydvmzuebemmzbkdocg: 2693832937626661110()

CRC64 di: xxkorztacmgswsmbctusesyxnovhpcwm: 4505874566712022915()

CRC64 di: qcjkablbvifagwtzjyfvvxthbykntcua: 8183586054647984502()

CRC64 di: pxvwaiwzlapswjlcugbzyayxlzzkxbmj: 3364362110700408844()

CRC64 di: acxjgrywcuvioaurupenezhbivmsfobv: 10488603271136042429()

CRC64 di: syxckvmcfmzwullqkqkkhgjhxofeeppw: 4948055503412834324()

CRC64 di: olmyzxfqdnzinsdasfxmvkgngsdffmcz: 8494875643498249293()

 

 


Lezioni


Materiale didattico

Informazioni

Anno accademico2016-2017
Crediti6
SettoreINF/01
Anno2
Semestre2
PropedeuticitàNessuna

Programma

1) Introduzione di Complex Web attraverso analisi di contesti.

2) Definizione formale di Complex Web.

3) Studio dell proprietà di un complex web

4) Definizione di meta regole per il riconoscimento di un sistema complesso.

5) Richiamo dei concetti di protocollo su rete.

6) Richiami sui protocolli IP, TCP, HTTP, SSL.

7) Un linguaggio basato sul riconoscimento delle stringhe

8) Ottenimento di sequenze elementari di eventi su WEB

9) Il modello degli stati

10) Il modello delle transizioni temporali

11) Dipendenza e causalità

12) Il grafo causale.

13) Rappresentazione di complex web come insieme di grafi causali.


Testi di riferimento

Dispense a cura del docente, distribuite durante le lezioni


Ricevimento studenti

su appuntamento richiesto via mail all'indirizzo maurizio.talamo@uniroma2.it


Modalità di esame

Esame orale in cui si discute un progetto sviluppato durante le esercitazioni