Я выполняю задание, в котором мне нужно объявить символьные константы в MASM вместе с некоторыми другими функциями в программе. Я написал всю программу и думаю, что все сделал правильно, но у меня все еще есть синтаксическая ошибка для объявлений символических констант. Я должен объявить символические константы A = 5120, B = 260, C = 170 и D = 2200. В соответствии с директивой code с использованием инструкции mov переместите значения A, B, C и D в EAX, EBX, ECX и EDX соответственно. Однако он продолжает говорить, что есть синтаксическая ошибка для запятой перед 'C', что 'C' является синтаксической ошибкой, а все остальные мои символические константы не определены.
Я изменил «С» на «Е», и это сработало, но я чувствую, что смена букв здесь не проблема.
.data
mystring BYTE 20 DUP('a')
val1 SDWORD 2147483647
sum DWORD 0
firstName BYTE "Akash", "Akash", "Akash", "Akash", "Akash"
firstNameSize = ($ - firstName)
A = 5120
B = 260
C = 170
D = 2200
.code
main proc
mov eax, A
mov ebx, B
mov ecx, C
mov edx, D
sub ebx, ecx
add eax, ebx
sub eax, edx
mov sum, eax
invoke ExitProcess,0
Я ожидал, что на выходе будут отсутствовать ошибки компоновки, регистры будут содержать правильные значения и будут выполнять вычисления по числам.