We introduce algorithms for splitting a positive binary floating-point number into two numbers of around half the system precision, using arithmetic operations all rounded either toward −∞ or toward +∞. We use these algorithms to compute "exact" products (i.e., to express the product of two floating-point numbers as the unevaluated sum of two floatingpoint numbers, the rounded product and an error term). This is similar to the classical Dekker product, adapted here to directed roundings. Index Terms-Floating-point arithmetic, split functions, accurate products.