disba1ancer
ну в стм8 не так уж и много ресурсов, но он маленький и дешевый
Я сомневаюсь, что сишка где-то там не вывозит
Aiwan \ (•◡•) / _bot
Я сомневаюсь, что сишка где-то там не вывозит
зависит от задач и степени экономии на камне
Aiwan \ (•◡•) / _bot
Вам платят за вашу работу?
канешно, иначе смысл от нее
Segmented
Значит вопрос закрыт
Антон
если у меня есть беззнаковое число 200 в байте, чтоб забрать от туда 150 и осталось 50 что мне нужно сделать?
Aiwan \ (•◡•) / _bot
Segmented
если бы...
Ну, не станет же работодатель платить дилетанту
Aiwan \ (•◡•) / _bot
Значит вопрос закрыт
я ответил ровно на то, что ты спросил
Антон
200-150 сделать
А все потестил почему то думал что нужно байт от байта отнимать, а можно от байта отнять слово
Aiwan \ (•◡•) / _bot
но я рад твоей настойчивости
disba1ancer
Вам платят за вашу работу?
Только не удивлюсь, если работа не чисто асм, а асм используется как прикладное знание
Aiwan \ (•◡•) / _bot
Только не удивлюсь, если работа не чисто асм, а асм используется как прикладное знание
он уже сказал что вопрос закрыт. давай будем доверять вопрошающему и не рушить его "мир"
Антон
так правильно тоесть bl будет мало юзаю bx верно? mov al, 200 mov bx, -150 add al, bl
Aiwan \ (•◡•) / _bot
нет
disba1ancer
Aiwan \ (•◡•) / _bot
значащие биты -150 уходят за пределы 1 байта. поэтому ты не все значащие биты складываешь с al
disba1ancer
значащие биты -150 уходят за пределы 1 байта. поэтому ты не все значащие биты складываешь с al
Но результат в данном случае будет верный, чтобы был неверный, модуль числа должен выйти за 255
Антон
Просто вродебы я запустил mov al, 200 mov bx, -150 add al, bl и в al получил 32 что = 50
disba1ancer
Aiwan \ (•◡•) / _bot
Но результат в данном случае будет верный, чтобы был неверный, модуль числа должен выйти за 255
с таким успехом в звездную ночь я могу пальцем в небо тыкнуть и сказать, что там есть жизнь. и по твоим словам - я буду прав
disba1ancer
Хотя, наверное, я ошибаюсь
А, не, не ошибаюсь всё так
Антон
Нужно многое в голове держать получаеться, буду учиться
disba1ancer
Нужно многое в голове держать получаеться, буду учиться
Для начала пойми всю гениальность представления чисел в дополнительном коде
disba1ancer
с таким успехом в звездную ночь я могу пальцем в небо тыкнуть и сказать, что там есть жизнь. и по твоим словам - я буду прав
Оно просто так работает случайности тут ни при чём, но если делать без понимания рано или поздно получишь ошибку с которой не сможешь разобраться
Aiwan \ (•◡•) / _bot
Просто вродебы я запустил mov al, 200 mov bx, -150 add al, bl и в al получил 32 что = 50
переведи все в двухбайтовые регистры. так будет правильней и надежней. в асме есть приведение типов, так это сишники называют (но эт пока рано тебе). как уже начнешь чтото писать тестовое, можь и пригодится
Aiwan \ (•◡•) / _bot
Антон
Это книга?
Aiwan \ (•◡•) / _bot
мануал фасма
The Bird of Hermes
The Bird of Hermes
Говорят, привидение типов приходит за асм программистами, которые слишком увлекаются Си
Aiwan \ (•◡•) / _bot
Это страшная легенда
кто то картинку на эту тему делал
disba1ancer
Я бы это с натяжкой назвал приведением типов...
Aiwan \ (•◡•) / _bot
Я бы это с натяжкой назвал приведением типов...
ну а как в сишке называют вещь когда явно шорту в какой нить операции прописывают тип (int), потому что присваивание к инту идет в итоге?
Aiwan \ (•◡•) / _bot
Это страшная легенда
вот нашел. вроде она
Faike
вот нашел. вроде она
А ооп это использование конструкций struct и class?
Faike
Я не шарю за эти ваши парадигмы
Faike
Я просто знаю что вот "есть c++" и что я могу на нем написать, комманды всякие знаю и прочее. Дальше я хз
The Bird of Hermes
вот нашел. вроде она
В сишке приведение типов скорее всего будет выполняться через movsx/movzx
Faike
И зря
Да всмысле зря, что значит "зря"?
Faike
Это мое решение не шарить за них?
The Bird of Hermes
Faike
Ну плохое решение
Так я про то и говорю что это не моё решение не шарить за них
Антон
Как использовать данные так mov ax, ax:bx ax:bx это результат прибавления ;1234 = 0000 0100 1101 0010 ;500 = 0000 0001 1111 0100 mov al, 00000100b mov bl, 11010010b mov cl, 00000001b mov dl, 11110100b add bl,dl adc al,cl ;1234 + 500 = 1734 = ax:bx
Антон
а понял
Антон
mov ah, al mov al, bl
Антон
можно ли это сделать одной строчкой?
Aiwan \ (•◡•) / _bot
можно ли это сделать одной строчкой?
макрос напиши. даже в 1 слово получится
Aiwan \ (•◡•) / _bot
fasmworld.ru
Антон
А почему бы не использовать ax и bx?
Я пока только учусь хз пока как и что
Aiwan \ (•◡•) / _bot
Антон
и какой асм используешь?
Какой емулятор? Или и асм разные?
Антон
Я подзавис немного с вопросом
Aiwan \ (•◡•) / _bot
ну какой компиль - masm nasm tasm fasm gas yasm uasm goasm?
Aiwan \ (•◡•) / _bot
хотя ты в эмуляторе крутишься как я понял
disba1ancer
В сишке приведение типов скорее всего будет выполняться через movsx/movzx
если так это понимать, то и обычный mov иногда может приводить
disba1ancer
В сишке приведение типов скорее всего будет выполняться через movsx/movzx
а вообще, тогда любая инструкция, которая может читать часть регистра, выполняет приведение типов
disba1ancer
mov ah, al mov al, bl
что ты тут написал?
disba1ancer
и даже знак расширяет?
так речь преимущественно про сужающие касты, да и каст не обязательно делает знаковое расширение
Aiwan \ (•◡•) / _bot
ну в случае сужения делать ничего и не надо
disba1ancer
Aiwan \ (•◡•) / _bot
я про касты вообще говорил
что ьакое каст? знаю из игр это у магов случается, вызов заклинания
Aiwan \ (•◡•) / _bot
мы выше про приведение типов говорили, причем здесь каст
Aiwan \ (•◡•) / _bot
тайп каст это приведение типа
ты сишным языком говоришь
disba1ancer
Aiwan \ (•◡•) / _bot