#include <iostream>
#include <vector>
using namespace std;
int main() {
// Эмуляция памяти (размер 65536 байт)
vector<unsigned char> memory(65536, 0);
// Регистры
unsigned short AX = 0, BX = 0, CX = 0;
// Имитация данных в памяти по адресам 0x304 и 0x300
memory[0x304] = 0x04; // Младший байт значения 4
memory[0x305] = 0x00; // Старший байт значения 4
memory[0x300] = 0x06; // Младший байт значения 6
memory[0x301] = 0x00; // Старший байт значения 6
// Эмуляция инструкций
// MOV AX, [0304]
AX = (memory[0x305] << 8) | memory[0x304]; // Чтение 16-битного значения из памяти
// MOV BX, 0300
BX = 0x0300;
// MOV CX, [BX]
CX = (memory[BX + 1] << 8) | memory[BX];
// ADD AX, CX
AX += CX;
// Вывод результата
cout << "AX = " << (int)AX << endl; // Вывод значения AX
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewogICAgLy8g0K3QvNGD0LvRj9GG0LjRjyDQv9Cw0LzRj9GC0LggKNGA0LDQt9C80LXRgCA2NTUzNiDQsdCw0LnRgikKICAgIHZlY3Rvcjx1bnNpZ25lZCBjaGFyPiBtZW1vcnkoNjU1MzYsIDApOwoKICAgIC8vINCg0LXQs9C40YHRgtGA0YsKICAgIHVuc2lnbmVkIHNob3J0IEFYID0gMCwgQlggPSAwLCBDWCA9IDA7CgogICAgLy8g0JjQvNC40YLQsNGG0LjRjyDQtNCw0L3QvdGL0YUg0LIg0L/QsNC80Y/RgtC4INC/0L4g0LDQtNGA0LXRgdCw0LwgMHgzMDQg0LggMHgzMDAKICAgIG1lbW9yeVsweDMwNF0gPSAweDA0OyAvLyDQnNC70LDQtNGI0LjQuSDQsdCw0LnRgiDQt9C90LDRh9C10L3QuNGPIDQKICAgIG1lbW9yeVsweDMwNV0gPSAweDAwOyAvLyDQodGC0LDRgNGI0LjQuSDQsdCw0LnRgiDQt9C90LDRh9C10L3QuNGPIDQKICAgIG1lbW9yeVsweDMwMF0gPSAweDA2OyAvLyDQnNC70LDQtNGI0LjQuSDQsdCw0LnRgiDQt9C90LDRh9C10L3QuNGPIDYKICAgIG1lbW9yeVsweDMwMV0gPSAweDAwOyAvLyDQodGC0LDRgNGI0LjQuSDQsdCw0LnRgiDQt9C90LDRh9C10L3QuNGPIDYKCiAgICAvLyDQrdC80YPQu9GP0YbQuNGPINC40L3RgdGC0YDRg9C60YbQuNC5CiAgICAvLyBNT1YgQVgsIFswMzA0XQogICAgQVggPSAobWVtb3J5WzB4MzA1XSA8PCA4KSB8IG1lbW9yeVsweDMwNF07IC8vINCn0YLQtdC90LjQtSAxNi3QsdC40YLQvdC+0LPQviDQt9C90LDRh9C10L3QuNGPINC40Lcg0L/QsNC80Y/RgtC4CgogICAgLy8gTU9WIEJYLCAwMzAwCiAgICBCWCA9IDB4MDMwMDsKCiAgICAvLyBNT1YgQ1gsIFtCWF0KICAgIENYID0gKG1lbW9yeVtCWCArIDFdIDw8IDgpIHwgbWVtb3J5W0JYXTsKCiAgICAvLyBBREQgQVgsIENYCiAgICBBWCArPSBDWDsKCiAgICAvLyDQktGL0LLQvtC0INGA0LXQt9GD0LvRjNGC0LDRgtCwCiAgICBjb3V0IDw8ICJBWCA9ICIgPDwgKGludClBWCA8PCBlbmRsOyAvLyDQktGL0LLQvtC0INC30L3QsNGH0LXQvdC40Y8gQVgKCiAgICByZXR1cm4gMDsKfQo=