42 bits_(bits), rowLength_(rowLength), nextBitIndex_(0) {
56 unsigned int size =
bits_.size();
61 for (
unsigned int i = 0; i < numOfRows; i++){
78 unsigned int vectorSize =
bits.size();
85 if (
bits[startIndex] && length > 0){
90 for (
int i = 1; i < length; i++) {
92 if (startIndex + i < vectorSize &&
bits[startIndex + i]) {
120 std::string sequence_word =
"";
123 for (
unsigned int i = 0;i < (imem_width-length)/8; i++){
125 sequence_word.push_back(zero);
130 unsigned int partial_char_len = length % 8;
133 if (partial_char_len != 0){
134 sequence_word.push_back(
character(
bits_, partial_start_index, partial_char_len));
135 partial_start_index += partial_char_len;
139 for (
unsigned int index = partial_start_index; index <= lastIndex; index +=8){
149 for (std::string::reverse_iterator iter = sequence_word.rbegin();
150 iter != sequence_word.rend(); iter++){