Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Линейная алгебра для студентов-машиностроителей. В 2 частях. Ч.1. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
11.08.2026
Размер:
608 Кб
Скачать

Поскольку a > 0, то argz4 =arctg 13 = −arctg3 = − π3. Таким об-

разом,

z4

= 2

 

 

π

 

π

cos

3

 

+isin

3

.

 

 

 

 

 

 

 

 

 

MATLAB: clear

z = [3 + sym(sqrt(3))*1i, –2 + 4i, –2 – 2i, 1 – sym(sqrt(3))*1i]; r = abs(z) % модули

phi = angle(z) % аргументы в промежутке от –pi до pi

Утригонометрическойформыестьвариантболеекраткойзаписи. Любое комплексное число (кроме нуля) z =a+bi можно запи-

сать в показательной (экспоненциальной) форме: z = z eiϕ , где z

модуль комплексного числа; ϕ – аргумент комплексного числа. Эта форма основана на формуле Эйлера eiϕ =cosϕ+isinϕ. ФормулуЭйлераможнодоказатьразнымиспособами,например

так: рассмотрим функцию f(ϕ) для действительного аргумента ϕ: f (ϕ)= cosϕ+eiϕisinϕ =eiϕ (cosϕ+isinϕ).

Найдем производную функции f(ϕ) по переменной ϕ по правилу нахождения производной от произведения: f (ϕ)=eiϕ ×

× (icosϕ−sinϕ)ieiϕ (cosϕ+isinϕ)=0.

Следовательно, f(ϕ) – константа. Так как для любых действи-

тельных ϕ f (0)=1, f (ϕ)=1, eiϕ =cosϕ+isinϕ.

На основе этой формулы составлено тождество Эйлера – одно из самых известных математических соотношений, оно связывает пять фундаментальных математических констант [10]: eiπ +1=0.

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

z1 = r1 (cosϕ1 +isinϕ1), z2 = r2 (cosϕ2 +isinϕ2 );

z1z2 = r1r2 (cos(ϕ1 2 )+isin(ϕ1 2 ));

21

z1 = r1 (cos(ϕ1 −ϕ2 )+isin(ϕ1 −ϕ2 )), z2 ≠ 0. z2 r2

Для возведения в целую степень используется формула Муавра. Если комплексное число представлено в тригонометрической форме z = z (cosϕ+isinϕ), то при его возведении в целую степень

n справедлива формулаzn = z n (cos(nϕ)+i sin(nϕ)).

Для натуральных чисел доказать эту формулу можно с помощью метода математической индукции. База для n = 1 очевидно выполнена. Докажем переход от n к n + 1:

zn+1 = znz = z n (cos(nϕ)+i sin(nϕ)) z (cosϕ+isinϕ)=

=zn по предположению индукции

=z n+1 cos( (n(ϕ)cos) ϕ−sin(n(ϕ)sin) ϕ+) =

i cos nϕ sinϕ+sin nϕ sinϕ

Используем известные тригонометрические формулы коси-

нуса и синуса суммы: cos(nϕ)cosϕ−sin(nϕ)sinϕ=cos((n+1)ϕ); cos(nϕ)sinϕ+sin(nϕ)sinϕ=sin((n+1)ϕ).

Таким образом, =z n+1 (cos((n+1)ϕ)+isin((n+1)ϕ)),что и тре-

бовалось доказать.

Кроме того, формула остается верной для нуля и отрицательных целых чисел: z0 = z 0 (cos(0)+i sin(0))=1; zn =(zn )−1 = z n ×

× ((cos(nϕ)+i sin(nϕ)))−1 =

Покажем, что произведение комплексного числа и его сопря-

женного равно квадрату

 

модуля.

Пусть z = a + bi:

zz =(a+bi)(abi)=a2 b2i2

i2

= a2 +b2 =

 

z

 

2 .

 

 

Отсюда следует

=−1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

= z

−1

=

z

;

 

 

 

 

z

 

z

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22

=

 

z

 

n (cos(nϕ)i sin(nϕ))

=

 

z

 

n

(cos(nϕ)i

sin(nϕ))=

 

 

 

 

 

 

cos2

(nϕ)+sin2 (nϕ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=1

 

 

 

 

 

 

 

 

=

 

z

 

n (cos(nϕ)+i sin(nϕ)),ч то

и требовалось

 

 

 

cos(nϕ)=cos(nϕ)

 

 

 

 

 

 

 

 

 

 

 

−sin(nϕ)=sin(−nϕ)

 

 

 

 

 

 

 

 

 

 

доказать.

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

Пример 1.4. Вычислить (−1−i3)15 .

Решение. Запишем число z = −1−i3 в тригонометрической

форме. Для

 

этого

 

найдем

 

 

его

 

 

 

модуль

и

аргумент:

 

z

 

=

(−1)2 +(

 

 

)2

 

=

 

= 2;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

1+3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

argz = −π+arctg

 

 

 

π

 

2π;

 

 

 

 

 

 

 

3

= −π+

 

= −

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

−1

 

 

 

 

3

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

z = 2 cos

 

3

π +isin

3

π .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

По формуле Муавра

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(−1−i

 

 

15

 

 

 

 

 

 

 

2

 

 

 

 

 

 

2

 

 

15

=

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3)

=

2 cos

3

π +isin

 

3

π

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

215

 

 

2

 

 

 

+isin

 

 

 

2

π15

 

 

 

 

cos

3

π15

3

 

=

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= 215 (cos(−10π)+isin(−10π))= 215 (1+i 0)= 215.

MATLAB: clear

z = simplify((–1 – 1i*sym(sqrt(3)))^15)

Пример 1.5. Найти модуль и аргумент комплексного числа z (в пределах [–π; π]):

23

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(

 

 

 

 

 

 

 

 

i)4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

z =

 

 

 

 

 

 

 

 

 

2

+

6

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+icos

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

sin

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Решение. Представим

 

 

 

2

+

 

 

 

6

i в тригонометрической форме:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

π

 

 

 

π

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 +

 

6i = 2

2

+

 

 

 

 

= 2

 

 

 

2

cos

 

+sin

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Взнаменателечислоsin

 

+icos

записанонесовсемвтриго-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

нометрической форме, исправим это:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

π

−α

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

sinα =cos

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

sin

+icos

=

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=cos

 

 

 

 

=

10

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

π

 

 

 

 

 

10

+isin −

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

−α

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cosα =sin

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= cosα =cos

(−α)

=cos −

 

2π

+isin

2π .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Теперь проведем операции умножения и деления:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

π

 

 

 

 

 

 

 

π

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(2

2)

 

+sin

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cos

4π

+sin

4πi

 

 

 

cos

3

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

z =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=64

 

 

 

 

 

 

 

 

 

 

3

 

 

 

3

 

 

=

 

 

 

 

2π

 

 

 

 

 

 

 

 

2π

2

 

 

 

 

 

 

4π

 

 

 

 

 

 

4π

 

 

 

+isin

 

 

 

 

 

 

 

 

 

 

 

cos

10

 

+isin −

 

 

 

 

cos −

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=64

 

 

 

 

4π

+

 

4π

 

 

 

 

4π

 

+

 

4π

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cos

3

 

10

 

+sin

 

3

 

 

10

i

=

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=64

 

 

 

 

26π

 

 

 

 

 

26π

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cos

15

 

 

 

 

+sin

 

15

 

i

=

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Исправимаргументтак,чтобыоноказалсявпромежутке[–π;π]:

= 64

 

 

26π

 

 

 

26π

 

 

 

=

cos

15

 

−2π

+sin

15

−2π i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

4

 

 

 

 

=64

cos

 

 

π

+sin

 

π i .

 

 

15

15

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

24

MATLAB: clear

syms pi assume(pi, ‘real’)

d = (sin(3*pi/10) + 1i*cos(7*pi/10))^2;

d = subs(d, [sin(3*pi/10)cos(7*pi/10)], [cos(pi/2 – 3*pi/10)sin(pi/2 – 7*pi/10)]);

d = simplify(expand(d));

phi_d=simplify(atan(imag(d)/real(d)),’IgnoreAnalyticConstraints’,true); r_d = simplify(rewrite(abs(d),’sqrt’));

n = (sym(sqrt(2)) + sym(sqrt(6))*1i)^4; phi_n = simplify(angle(n));

r_n = simplify(abs(n));

n = r_n/r_d *(cos(phi_n - phi_d) + 1i * sin(phi_n - phi_d))

В тригонометрической и показательной формах из комплексногочислаудобноизвлекатькорень.Рассмотримуравнениеzn = ϕ, или, что то же самое, z = nω(ω≠ 0). Величина n может принимать

любое натуральное значение.

Корней здесь будет несколько, все можно найти по формуле zk = nω cos ϕ+n2πk +isin ϕ+n2πk ,

где ω – модуль комплексного числа ω, из которого в формуле бе-

рется арифметический корень n степени; ϕ – аргумент комплексного числа ω; параметр k принимает значения 0, 1, 2, …, n – 1 (или любой другой набор из n последовательно идущих целых чисел).

Таким образом, у отличного от нуля комплексного числа всегда есть ровно n корней степени n.

Для ω = 0 аргумент не определен, а единственным корнем является число 0.

Для доказательства формулы запишем ω и z в тригонометрической форме: ω= ω (cosϕ+isinϕ); z = z (cosθ+isinθ). Тогда равен-

ствоzn=ωпреобразуетсяв z n (cos(nθ)+isin(nθ))= ω (cosϕ+isinϕ).

25

Приравниваямодулииаргументы,получим z n = ω z = nω ;

nθ=ϕ+2πk, k θ= ϕ+n2πk ,k .

Всего есть n различных значений θ, причем можно ограничиться любым набором из n последовательно идущих целых чисел.

Пример 1.6. Найти все значения кубического корня из комплексного числа ω:

ω= − 23 + 23 i.

Решение. Здесь степень корня n = 3, а значит, уравнение имеет ровно три корня z0, z1, z2:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ϕ+2πk

 

 

 

 

 

 

 

ϕ+2πk

 

 

 

 

 

zk = n

 

ω

 

+isin

 

 

 

 

 

 

 

cos

 

 

 

 

 

n

 

 

 

n

 

 

,k ={0,1,2}.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Найдем модуль и аргумент комплексного числа ω:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

3

 

 

3

 

3

 

 

 

3

 

 

 

 

 

 

 

 

 

 

ω

=

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

=

 

 

 

+

 

=

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

2

 

 

 

 

 

4

 

4

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Число ω расположено во второй четверти, поэтому

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= π−arctg1= π− π

= .

ϕ= π+arctg

 

 

2

 

 

 

 

= π+arctg(−1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

4

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Воспользуемся формулой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ϕ+2πk

 

 

 

 

 

 

ϕ+2πk

 

 

 

 

 

zk = n

 

ω

 

 

 

 

+isin

:

 

 

 

 

 

 

cos

 

n

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+2πk

 

 

 

 

 

 

 

+2πk

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

3

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

4

 

 

 

 

zk =

2

 

cos

 

 

 

 

 

3

 

+isin

 

 

 

3

 

 

 

,k

=0,1,2.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

26

Корень удобно сразу же упростить:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+2πk

 

 

+2πk

zk = 6 3

4

4

cos

 

 

+isin

 

.

 

3

 

3

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Подставим в формулу k =0,1,2 и получим корни

 

z0 = 6

 

3

 

 

π

+isin

π

 

 

2

cos

4

4

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cos11π

+isin11π ;

z

= 6

3

 

1

 

2

 

 

 

12

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

19π

 

19π

 

z2

= 6

 

3

 

 

+isin

2

 

cos

12

12

.

 

 

 

 

 

 

 

MATLAB: clear

w = -sqrt(3)/2 + 1i*sqrt(3)/2; coeff = [1 0 0 -w]; roots(coeff)

УПРАЖНЕНИЯ

Упражнение 1.1. Доказать, что число 2+3 не является рациональным.

Упражнение 1.2. Доказать, что так называемое кольцо вычетов по модулю n n действительно является ассоциативным коммутативным

кольцом с единицей. Оно состоит из остатков {0,12, …, n−1} от деле-

ния на n, операции сложения и умножения проводятся как с целыми числами, но по модулю n.

Упражнение 1.3. При каких действительных значениях x и y комп-

лексные числа z = x2

+4yyi и

z

2

=4 + y2

x2i будут сопряжен-

1

 

 

i

 

 

 

 

 

 

ными?

Г л а в а 2

ЧИСЛА В КОМПЬЮТЕРЕ

2.1. Системы счисления

Совокупность правил записи чисел называется системой счис- ления [13]. Системы счисления подразделяются на позиционные и непозиционные. Последние характеризуются тем, что в них символы, обозначающие то или иное число, не меняют своего значения в зависимости от местоположения в записи этого числа. Известный пример – римская система счисления. В позиционных системах местоположение очень важно.

Внепозиционных системах с увеличением чисел требуются новые символы и арифметические действия проводить в них неудобно. Поэтому на практике используются позиционные системы счисления.

Впозиционнойсистемесчислениялюбоецелоеположительное число может быть представлено в виде

a

a

...a a

=a

pn−1 +a

pn−2 +…+a p1

+a ,

n−1

n−2

1 0

n−1

n−2

1

0

 

 

 

 

 

 

число

p

 

 

 

где ai – цифра (символ) данной системы счисления (0 ≤ ai < p); n – число разрядов при написании числа; p – основание системы счисления (некоторое натуральное число); подстрочный индекс обозначает систему счисления.

Например, p

= 10 – десятичная система счисления:

123 =1 102

+2 101

+3.

10

 

 

Здесь термин «символ» использован не просто так. Еслиp > 10, цифрнехватитиможнозадействовать,например,буквыанглийского алфавита A, B, C,…: шестнадцатеричная система c символами 0–9, далее A, B, C, D, E, F. Можно переводить числа из одной системы счисления в другую (из десятичной в двоичную и наоборот). Кроме того, формула адаптируется под десятичные дроби, только после разделителя степени будут отрицательные (–1, –2, –3, …).

Пример2.1.Перевестииздесятичнойсистемысчислениявдвоичную систему число 123,12510.

28

Решение. Для перевода целой части числа поделим несколько раз число на основание новой системы и остатки от деления запишем в обратном порядке:

123=61 2+1;

61=30 2+1;

30=15 2+0;

15=7 2+1;

7=3 2+1;

3=1 2+1;

1=0 2+1.

Получиличисло11110112.Выполнимпроверку:11110112 =1 26 +

+1 25 +1 24 +1 23 +0 22 +1 21 +1 =64+32+16+8+2+1=12310.

Для перевода дробной части числа нужно последовательно умножать ее на основание новой системы счисления до тех пор, пока дробная часть не обнулится. Если при умножении получаем число с целой частью, большей нуля, то она заносится в результат и далее отбрасывается. Иначе записывается нуль:

0,125 2=0,25;

0,25 2=0,5;

0,5 2=1,0.

Получили число 0,0012. Выполним проверку: 0,0012 =0 20 +

+0 2−1 +0 2−2 +1 2−3 =0,12510.

Таким образом, ответ 1111011,0012.

MATLAB: clear

p = 2;

n = 123.125;

n_bin = dec2bin(fix(n)); % целую часть конвертируем встроенной функцией

temp = n - fix(n); % дробную часть самостоятельно по алгоритму if temp > 0

n_bin = n_bin + «.»;

29

end

while (temp > 0) temp = temp * p; if temp < 1

n_bin = n_bin + «0»; else

n_bin = n_bin + num2str(fix(temp)); temp = temp - fix(temp);

end end n_bin

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

Для ее реализации нужны технические устройства всего с двумя устойчивыми состояниями (есть ток – нет тока, намагничен – не намагничен и т. п.), а не, например, с десятью, как в десятичной системе. Представление информации посредством только двух состояний надежно и помехоустойчиво. Кроме того, удобно выполнять логические преобразования информации. Но есть и недоста- ток–быстрыйростчисларазрядовпризаписичисла,чтоозначает меньшую емкость для хранения чисел с фиксированным числом разрядов по сравнению с системами с большим основанием.

Напрямую двоичная информация плохо воспринимается человеком, для ее интерпретации часто удобнее использовать шестнадцатеричную систему, если число разрядов в числе кратно 4 (например, для записи цветов в модели RGB [14]).

2.2.Организация памяти

Вэтом разделе не будет детально описана организация памяти на низком уровне – физической структуры чипов памяти (т. е. как микросхемы реализованы в железе), кроме одной оговорки.

Классически ячейка памяти определяется как электронная схема, хранящая информацию (логический или единица – так называемый бит (от англ. bit) – минимальное количество информации) о напряжении (условимся, что нуль – значение напряжения

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]