private static ItemSelectableCollection <RelocatableModule> AssignLabelAddress( this ItemSelectableCollection <RelocatableModule> relModules) { MemoryAddress baseAddress = LoadAddress; foreach (RelocatableModule relModule in relModules) { relModule.AssignLabelAddress(baseAddress); MemorySize wordsSize = relModule.GetWordsSize(); baseAddress = baseAddress.Add(wordsSize); } return(relModules); }
/// <summary> /// 定義したラベルに実行可能モジュールでの絶対アドレスを割り当てます。 /// </summary> /// <param name="baseAddress"> /// ラベルが定義された再配置可能モジュールが実行可能モジュールで配置されるアドレスです。 /// </param> internal void AssignAbsAddress(MemoryAddress baseAddress) { m_absAddress = baseAddress.Add(m_relOffset); }
private MemoryAddress AddSize(MemoryAddress address, UInt16 sizeValue) { MemorySize size = new MemorySize(sizeValue); return(address.Add(size)); }
private MemoryAddress AddOffset(MemoryAddress address, UInt16 offsetValue) { MemoryOffset offset = new MemoryOffset(offsetValue); return(address.Add(offset)); }