Отладка ASM с помощью Visual Studio - содержимое регистра не отображается

Я работаю над проектом ассемблерного языка для класса, и хотя я, наконец, смог проработать все проблемы в этом коде (я считаю), теперь я не могу получить содержимое регистра. /p >

Вот мой код...

include C:\Irvine\Irvine32.inc

.data
;Variables are listed in following order VAR DATATYPE DIGITS[RADIX] with 
comments showing binary version of listed digits
  left DWORD 321                                        ;101000001b
  right DWORD 4247                                  ;1000010010111b 
  total DWORD ?                                 ;uninitialized
  diff DWORD ?                                  ;uninitialized

;Define a string called message containing HELLO WORLD!
message BYTE '"Hello world!"'

;Calculate length of Array and move to var ArrayLength
  Array WORD 1,2,4,8,16,32,64                           ;Array 
  ArrayLength = ($ - Array) / 2

.code
main PROC

;Move left and right to respective registers
  MOV eax,left
  MOV ebx,right

;Add left var and right var and store in new var called total and move to 
ecx
  MOV total,eax
  ADD total,ebx
  MOV ecx,total

;Subtract left var and right var and store in new var called diff and move 
to edx  
  MOV diff,eax
  SUB diff,ebx
  MOV edx,diff

;Move Array to esi
  MOV esi,ArrayLength

  call  DumpRegs 

  exit
main ENDP
END main

При отладке я не получаю сообщений об ошибках, но среда IDE не отображает регистры или их содержимое, которое мне нужно.

Я искал всюду, чтобы попытаться посмотреть, что может быть проблемой, и получил некоторые ответы, и смог найти некоторые сведения об открытии окна регистрации в VS на этом веб-сайте...

https://msdn.microsoft.com/en-us/library/62680774.aspx

Но я попытался найти это окно в своей среде IDE даже после включения отладки на уровне адреса, но безрезультатно. Я не знаю, является ли проблема с установкой или отсутствием окна регистрации в VS2017... любая помощь была бы очень желанной.

Для записи я использую Visual Studio 2017


Я попытался добавить ожидание после call DumpRegs и даже точку останова, но это просто задерживает прогон и не отображает регистры вообще.

Похоже, что после добавления точки останова

Ответ 1

Благодаря @Jester я смог увидеть окно регистров. (Смотрите как использовать окно регистров в документах Visual Studio.)

Это может быть тривиально, но, тем не менее, я укажу его. Чтобы увидеть окно регистрации, вам нужно ввести точку останова перед выходом программы или записать свою программу для ее паузы, используя макрос Irvine wait или call ReadChar или аналогичный.

После паузы вы можете попасть в окно регистрации, перейдя в окно отладки окна и окна, и voila, вы увидите содержимое регистра.