DCPU-16 битовое смещение
Я пытаюсь выучить DCPU, и до этого я не баловался бинарным, поэтому держал себя в руках...
;Set b to 1
SET B,1 ;00001 (1)
SHL B,1 ;00010 (2)
SHL B,1 ;00100 (4)
SHL B,1 ;01000 (8)
SHL B,1 ;10000 (16)
Все, что я делаю, это смещаюсь влево, поэтому не следует просто удваивать само себя за каждую смену... в моем коде вы можете видеть, что у меня есть последнее смещение, превращающее реестр B в 16, но когда пробег B заканчивается 10, почему тот.
Я знаю, что это просто, но мне трудно обернуть голову! Заранее спасибо за помощь, Джейкоб
1 ответ
окно регистрации говорит 0x0010...
Вы получаете правильный ответ, вы просто просматриваете его в шестнадцатеричном формате.
Числа, начинающиеся с 0x
являются стандартным способом обозначения шестнадцатеричного числа; так что число 0x0010
на самом деле это число 1016 ("один ноль в шестнадцатиричной системе счисления"), которое в десятичном виде - это число шестнадцать.