diff --git a/Zadanie-03/Zadanie-03.iml b/Zadanie-03/Zadanie-03.iml new file mode 100644 index 0000000..d5c0743 --- /dev/null +++ b/Zadanie-03/Zadanie-03.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/Zadanie-03/src/com/tylkowski/crc/CrcTask.java b/Zadanie-03/src/com/tylkowski/crc/CrcTask.java index 6791b26..cf67b17 100644 --- a/Zadanie-03/src/com/tylkowski/crc/CrcTask.java +++ b/Zadanie-03/src/com/tylkowski/crc/CrcTask.java @@ -1,13 +1,38 @@ package com.tylkowski.crc; -import java.util.Arrays; - public class CrcTask { private String message; - private String polyGenerator; + private short[] messageAsShortArray; + private short[] polyGenerator; public CrcTask(String message) { - this.message = message; - this.polyGenerator = "10001000000100001"; + this.message = message + "0000000000000000"; + convertMessageToBinaryShortArray(); + createGeneratingPoly(); + swapPolyValues(); + } + + private void convertMessageToBinaryShortArray() { + messageAsShortArray = new short[message.length()]; + for (int i = 0; i < message.length(); i++) { + if (message.charAt(i) == 48) { + messageAsShortArray[i] = 0; + } else { + messageAsShortArray[i] = 1; + } + } + } + + private void createGeneratingPoly() { + polyGenerator = new short[16]; + for (int i = 0; i < 16; i++) { + polyGenerator[i] = 0; + } + } + + private void swapPolyValues() { + for (int i = 0; i < polyGenerator.length; i++) { + messageAsShortArray[i] = (short) ((messageAsShortArray[i] + 1) % 2); + } } }