Усечение происходит в регистры процессора. Они имеют разные размеры: 8/16/32/64 бит. Теперь вы можете представить себе такой регистр, как:
<--rax----------------------------------------------------------------> (64-bit)
<--eax----------------------------> (32-bit)
<--ax-----------> (16-bit)
<--ah--> <--al--> (8-bit high & low)
01100011 01100001 01110010 01110010 01111001 00100000 01101111 01101110
x
сначала задано 32-битное значение 0x1248642
. В памяти * это будет выглядеть так:
-----------------------------
| 01 | 24 | 86 | 42 |
-----------------------------
31..24 23..16 15..8 7..0
Теперь компилятор загружает x
в регистр. Из него он может просто загрузить наименее значимые 16 бит (а именно ax
) и сохранить их в sx
.
* Для простоты энтузиазм не учитывается
Нет, потому что это не SSH с использованием ваших файлов конфигурации, а удаленная оболочка.
Я предлагаю сохранить вашу конфигурацию файлы в Subversion или некоторых других VCS. Вот как я это делаю .
Что я делаю, так это сохраняю все мои конфигурационные файлы в dotfiles.git на центральный сервер.
Вы можете настроить его так, чтобы при подключении по ssh к удаленной машине вы автоматически извлекали последнюю версию файлов точек. Я делаю что-то вроде этого:
ssh myhost
cd ~/dotfiles
git pull --rebase
cd ~
ln -sf dotfiles/$username/linux/.* .
Примечание:
Чтобы поместить это в сценарий оболочки, вы можете автоматизировать процесс выполнения команд на удаленной машине, отправив по конвейеру ssh .
«$ username» существует для того, чтобы вы могли поделиться своими файлами конфигурации с другими людьми, с которыми вы работаете.
"ln -sf" создает символические ссылки на все ваши точечные файлы, перезаписывая любые локальные файлы, так что ~ / .emacs связан с контролируемым версией файлом ~ / dotfiles / $ username / .emacs.
Использование "linux" Подкаталог просто для того, чтобы позволить изменения конфигурации на разных платформах. У меня также есть каталог mac в папке dotfiles / $ username / mac. Большинство файлов в каталоге / mac являются символическими ссылками из каталога linux, поскольку они очень похожи, но есть некоторые исключения.
Наконец, обратите внимание, что вы можете сделать это еще более изощренным, используя имена хостов и тому подобное, а не просто универсальный 'Linux'. С помощью dotfiles.git вы также можете совершать набеги на дотфайлы от своих друзей, что удивительно - у каждого есть свои маленькие хитрости и хитрости.
Ну, нет, потому что, как говорит Энди Лестер , удаленная машина - это та, работать, и у него нет доступа к вашему локальному компьютеру для получения .vimrc ...
С другой стороны, вы можете использовать sshfs для локального монтирования удаленной файловой системы и локального редактирования файлов. Это не требует установки чего-либо на удаленной машине. Не уверен, насколько он эффективен, может быть, он не подходит для редактирования больших файлов по медленным ссылкам.
Или в Komodo IDE имеется удобная опция «Открыть >> Удаленный файл», которая позволяет редактировать файлы на удаленном компьютере. машины, автоматически сканируя их назад и вперед.
Вы всегда можете просто скопировать файлы на компьютер перед подключением с помощью ssh:
#!/bin/bash
scp ~/.bash_profile ~/.vimrc user@host:
ssh user@host
Это лучше всего работает, если вы используя ключи, чтобы войти, и никто больше не входит в систему как этот пользователь.
ssh может быть настроен для передачи определенных переменных среды другим (удаленная сторона). А поскольку большинство оболочек проверяют некоторые переменные окружения на предмет применения дополнительных настроек, вы можете использовать это для удаленного применения некоторых локальных настроек. Но это немного сложно, и большинство администраторов в любом случае отключают сквозную передачу переменной среды ssh в конфигурации sshd.
Я записал чрезвычайно простой инструмент для этого, которое позволит, Вы к исходно транспортируете свой .vimrc файл каждый раз, когда Вы ssh, при помощи встроенных опций конфигурации SSHd нестандартным способом.
Никакое дополнительное svn
, scp
, copy/paste
, и т.д. требуемый.
Это просто, легко, и работает по умолчанию над всеми конфигурациями сервера, которые я протестировал до сих пор.