Thread C Funktion in perl umsetzen (16 answers)
Opened by piet at 2015-02-11 13:03

Raubtier
 2015-02-11 15:31
#179593 #179593
User since
2012-05-04
1054 Artikel
BenutzerIn

user image
Ich frage mich gerade, ob dieser Code hier richtig ist (so hätte ich das jetzt übersetzt):

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
use 5.14.0;

my @data = map { unpack "C", $_ } ("\xA3", "\x05", "\x00", "\x00", "\x00", "\x00", "\x00");

sub checksum {
    use integer;
    my $sum16bit = 0;
    $sum16bit = ($sum16bit + $_) & 65535 for @_;
    my $sumdivmod = ($sum16bit >> 8) + ($sum16bit & 255);
    return ((($sumdivmod >> 8) + ($sumdivmod & 255)) & 255);
}

say checksum(@data);

Last edited: 2015-02-11 15:37:55 +0100 (CET)

View full thread C Funktion in perl umsetzen