2016-03-06 4 views
0

При сохранении .word значение памяти в секции .data я столкнулся с двумя ситуациями:в Mars Ассамблеи .word двойные кавычки против одинарные кавычки

* Я знаю, что .word предназначены для хранения целого числа, но почему второй лайн, а первый нет?

.data 
    firstWord: .word "A" 
    secondWord: .word 'A' 

ответ

1

Обычно ассемблеры и компиляторы позволяют выразить количество ASCII-код, связанное с ASCII-символом, заключая его между одинарными кавычками.

Первое определение (firstWord) имеет постоянную строку, поэтому при сборке источника возникает ошибка, потому что это не целое слово.

Второе определение (secondWord) имеет код ASCII, который соответствует письму A (65), поэтому это действительное целочисленное слово.