Hi Jürgen,
das Vorzeichen einer Integerzahl ist reine Interpretation. Binär sind +255 und -128 identisch (FF). Wenn du nach Bit-Operationen ein Vorzeichenproblem hast, weil Javascript keine Datentypen kennt und die Daten "nach bestem Wissen und Gewissen" interpretiert, musst du das selbst geradebiegen.
Ja, Du hast Recht ;)
Meine Lösung ist nun: Anwenden eines Typed Arrays und DataView. Entsprechende Methoden erzwingen Unsigned.
  
function masklen_to_num(masklen){  
    if(masklen == 0){  
        return 0;  
    }  
    else{  
        var buffer = new ArrayBuffer(4);  
        var dv = new DataView(buffer);  
        dv.setUint32(0, (0xffffFFFF <<(32 - masklen)));  
        var num = dv.getUint32(0);  
        return num;  
    }  
}  
HTML5 rockt, ich bin begeistert!!!
 nicht angemeldet
 nicht angemeldet Der Martin
 Der Martin JürgenB
 JürgenB Matthias Apsel
 Matthias Apsel Gunnar Bittersmann
 Gunnar Bittersmann