Ну не совсем одна команда. НЯП, нужно сначала загрузить маску в
регистр, потом записать в регистр по адресу. Проблема в том, что
вместе, адрес регистра и маска - слишком велики, чтобы поместиться
в одну команду. Поэтому, несмотря на красоту одновременного
снятия/установки, команд несколько. У RISC-V от WCH такой же механизм, с регистром постановки/сброса. Но необходимость в промежуточном регистре, убивает возможность сброса бита порта из прерывания без сохранения контекста, хотя бы из этого, единственного регистра.
У STM я использовал специальный диапазон памяти, где один бит периферии занимает целое слово. В некоторых случаях, сохраняло пару команд.