25 / 9 / 8
Регистрация: 13.12.2015
Сообщений: 484
1

Число перевести в ПК и ДК

11.11.2019, 20:03. Показов 2208. Ответов 7

Author24 — интернет-сервис помощи студентам
как перевести число в прямой код
и как перевести число в дополнительный код?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.11.2019, 20:03
Ответы с готовыми решениями:

Дано число n. Требуется перевести это число в римскую систему счисления
Дано число n. Требуется перевести это число в римскую систему счисления. Вход 9 Выход IX Вход ...

Перевести число в формате ieee-754 в число в десятеричной с.о
Здравствуйте. Как в джаве написать перевод числа в формате ieee-754 в число в десятеричной с.о.?...

Перевести число в число прописью
Я никак не пойму как делать. Вроде задание простое. Задача на С#. Программа принимает от...

Число прописью перевести в число
Доброго всем времени суток! Столкнулся с проблемой, нужно строку, к примеру "Одна тысяча...

7
Эксперт JS
6492 / 3903 / 2005
Регистрация: 14.06.2018
Сообщений: 6,781
11.11.2019, 21:11 2
Лучший ответ Сообщение было отмечено Николай16 как решение

Решение

Николай16, отнять единицу и все биты инвертировать на противоположные.

В JS вроде тильда ~ выполняет операцию NOT (инвертирование) для целого числа.
1
25 / 9 / 8
Регистрация: 13.12.2015
Сообщений: 484
11.11.2019, 21:13  [ТС] 3
можно пример хотябы как перевести число в прямой код
в инете нечего найти не могу (((
0
Эксперт JS
6492 / 3903 / 2005
Регистрация: 14.06.2018
Сообщений: 6,781
11.11.2019, 21:23 4
Николай16, википедия дает хороший пример:
https://ru.wikipedia.org/wiki/Дополнительный_код

Добавлено через 4 минуты
Допустим, число -1. У него беззнаковая часть - единица.

Прямой код: беззнаковую часть оставить как было, а в самый левый бит поставить признак отрицательного числа.
10000001
Но так числа в компьютере не хранятся. Это для служебного использования.

Дополнительный код - выше я описал.
0
25 / 9 / 8
Регистрация: 13.12.2015
Сообщений: 484
12.11.2019, 17:48  [ТС] 5
можно алгоритм перевода с пк в дк
0
Эксперт JS
6492 / 3903 / 2005
Регистрация: 14.06.2018
Сообщений: 6,781
12.11.2019, 18:13 6
Цитата Сообщение от Николай16 Посмотреть сообщение
можно алгоритм перевода с пк в дк
Если число неотрицательное, то дополнительный код равен прямому коду.

Если число отрицательное, то:
1) обнулить бит отрицательного числа (самый левый),
2) инвертировать все биты операцией NOT (тильда в JS)
3) прибавить единицу.
0
25 / 9 / 8
Регистрация: 13.12.2015
Сообщений: 484
13.11.2019, 00:09  [ТС] 7
спасибо, но я хочу код)))
0
Эксперт JS
6492 / 3903 / 2005
Регистрация: 14.06.2018
Сообщений: 6,781
14.11.2019, 11:21 8
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
</head>
<body>
    <script>
        /**
        * Имя типа у аргумента. Обычно с прописной буквы, кроме undefined и null.
        * Для примитивных типов подставляется имя типа-обертки.
        * @param {*} arg Произвольное значение объекта или примитивного типа, для которого нужно определить имя типа.
        */
        function getType(arg) {
            let proto, constr;
            return (arg === undefined) ? "undefined" :
                (arg === null) ? "null" :
                    (!(proto = Object.getPrototypeOf(arg)) || !(constr = proto.constructor)) ? "Object" : constr.name;
        }
 
 
        function fromDirectToAdditional(strSByte) {
            if (getType(strSByte) !== "String" || !strSByte.match(/^[01]{1,8}$/))
                throw new Error("Аргумент должен быть строковым представлением числа от -128 до +127 в прямом коде")
 
            let num = parseInt(strSByte, 2);
            if (num & 0b10000000) { // Отрицательное число преобразуем в дополнительный код
                num = (~(num & 0b01111111) + 1) & 0b11111111;
            }
            return num.toString(2).padStart(8, "0");
        }
 
        // Строковое представление числа от -128 до +127 в прямом коде
        let strDirectSByte = "10001011";
        let strAdditionalSByte = fromDirectToAdditional(strDirectSByte);
        console.log(strAdditionalSByte);
    </script>
</body>
</html>
0
14.11.2019, 11:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.11.2019, 11:21
Помогаю со студенческими работами здесь

Задаётся число в виде текста как а$.Как перевести этот текст в число?
Есть переменная a$=1 , в виде текста , как преобразовать её в цифру 1?

Перевести число из 16 СС в 10 СС
Помогите пожалуйста! Выводит ошибку &quot;Неверное количество фактических параметров&quot;(17 строка) uses...

Перевести число из 7 сс в 10-ую сс
Помогите дописать програмку, Перевести число из 7 сс в 10-ую сс, 19-ую сс и 28-ую систему счисления...

Перевести число из 10 СС в 2 СС
У меня есть число типа &quot;uint&quot;. Как получить запись этого числа в 2 системе счисления? И дальше мне...

Перевести число в 16-битное
В моей программе реализован линейный конгруэнтный метод генерации чисел. Максимальный период...

Перевести в шестнадцатиричное число
Здравствуйте. Есть такой вопрос. Как нужно написать форматную строку для того, чтобы из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru