Control flow troubles

I cleaned up the code a bit and still get strange results on the serial monitor.

char addressBit[15];
char dataBit[10];
int arrayIndex, i;
boolean startedA, endedA, flow = false;

int CE  = 47;
int OE  = 48;
int WE  = 49;

int AP[13] = {
  22,24,26,28,30,32,34,36,38,40,42,44,46};
int DP[8] =  {
  23,25,27,29,31,33,35,37};

void setup(){
  Serial.begin(9600);
  Serial.println("Enter address in decimal starting with the letter a and finishing it with a period!");
  Serial.println("Then enter data in decimal between d and comma!");
  for (i=2;i<10;i++) {
    pinMode(AP[i],OUTPUT); // address pins
  }
  for (i=9;i<14;i++) {
    pinMode(DP[i],INPUT); // data pins
  }
  // Setup Control Pins
  pinMode(CE, OUTPUT);
  pinMode(WE, OUTPUT);
  pinMode(OE, OUTPUT);
  pinMode(45, OUTPUT);

  // Setup Chip
  digitalWrite(CE, HIGH);
  digitalWrite(WE, LOW);
  digitalWrite(OE, HIGH);
}

void loop(){
  digitalWrite(45, HIGH);
  while(Serial.available() > 0)
  {
    char aChar = Serial.read();
    if(aChar == 'r') //beginning of the string
    {
      startedA = true;
      arrayIndex = 0;
      addressBit[arrayIndex] = '\0';
    }
    else if(aChar == '/') //end of string
    {
      endedA = true;
    }
    else if(startedA)
    {
      addressBit[arrayIndex] = aChar;
      arrayIndex++;
      addressBit[arrayIndex] = '\0';
    }
  }  
  if(startedA && endedA){ // string filled up
    int incomingByteA = atoi(addressBit); // Convert the string to an integer
    for(int j=0; j<13; j++){
      digitalWrite (AP[j], bitRead (incomingByteA,j));  // extract relevant bit and output on relevant pin.
      int a = bitRead (incomingByteA,j);
      //Serial.println(a);
    }
   
    // Get ready for the next time
    startedA = false;
    endedA = false;
    arrayIndex = 0;
    addressBit[arrayIndex] = '\0';
  }
  
   digitalWrite(WE,LOW);      // Write Disabled
    delay(1);
    digitalWrite(CE,HIGH);      // Chip enabled
    delay(1);
    digitalWrite(OE,HIGH);       // Reads Enabled
    delay(1);

  for(int i=0; i<8; i++){
    int data = digitalRead(DP[i]);
    Serial.print(data);
  }
  Serial.println(" ");
  delay(300);
}

Anyone could verify if it works? Just looking at the serial monitor doesn't help. Still struggle with that last for loop, I wish I knew how to execute it one!