这是输入7个以上数字进行7个一组进行组合的部分代码
s2 := TStringList.Create;
  //        s2.Duplicates := dupIgnore;
  //        s2.Sorted := True;
  mstr := '';
  for i := 0 to s1.Count - 1 do
    mstr := mstr + chr(ord('A') + StrToInt(s1.Strings[i]));
  //        s2.Add(mstr);
  //        i:=0;
  timestart := GetTickcount;
  flen := length(mstr);
  for L1 := 1 to flen - 6 do
    for L2 := L1 + 1 to flen - 5 do
      for L3 := L2 + 1 to flen - 4 do
        for L4 := L3 + 1 to flen - 3 do
          for L5 := L4 + 1 to flen - 2 do
            for L6 := L5 + 1 to flen - 1 do
              for L7 := L6 + 1 to flen do
                s2.Add(mstr[L1] + mstr[L2] + mstr[L3] + mstr[L4] + mstr[L5] +
                  mstr[L6] + mstr[L7]);
  timestart := GetTickcount - timestart;代码里面这句我看不懂:请解释以下行吗?
mstr := mstr + chr(ord('A') + StrToInt(s1.Strings[i]));
为什么要+ chr(ord('A') ?和我输入的参与组合的数字有什么关系?