ЛР13. Исправление операнда в программе rx_hex (#119)

* Update rx_hex.S

Изменил 18-ую инструкцию: 0030A823 на 0040A823, так как в uart_rx записывался регистр x3, а не x4, что подразумевается комментарием к инструкции. Вот подробное объяснение:
Было: 0030A623 = 0000000 00011 00001 010 01100 0100011 => sw: Mem[rs1 + imm] = Mem[x1 + c] = rs2 = 3x (00011)
Правильнее: 0000000 00100 00001 010 01100 0100011 => sw: Mem[rs1 + imm] = Mem[x1 + c] = rs2 = 4x (00100)

* Update lab_13_rx_hex_instr.mem

Изменил 18-ую инструкцию: 0030A823 на 0040A823, так как в uart_rx записывался регистр x3, а не x4, что подразумевается комментарием к инструкции.
This commit is contained in:
kivanov032
2025-06-16 10:41:27 +03:00
committed by GitHub
parent af6c6134cc
commit 8067dc77f6
2 changed files with 2 additions and 2 deletions

View File

@@ -4,7 +4,7 @@
20018193 20018193
0030a623 0030a623
00100213 00100213
0030a823 0040a823
03400293 03400293
00028293 00028293
30529073 30529073

View File

@@ -16,7 +16,7 @@ _start:
c: 20018193 c: 20018193
10: 0030a623 sw x3 , 0x0c(x1) 10: 0030a623 sw x3 , 0x0c(x1)
14: 00100213 li x4 , 0x00000001 # устанавливаем parity_bit 14: 00100213 li x4 , 0x00000001 # устанавливаем parity_bit
18: 0030a823 sw x4 , 0x10(x1) 18: 0040a823 sw x4 , 0x10(x1)
1c: 03400293 la x5, trap_handler # псевдоинструкция la аналогично li загружает число, 1c: 03400293 la x5, trap_handler # псевдоинструкция la аналогично li загружает число,
20: 00028293 # только в случае la это число является адресом 20: 00028293 # только в случае la это число является адресом
# указанного места (адреса обработчика перехвата) # указанного места (адреса обработчика перехвата)